﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace V82.ОбщиеМодули
{
	public partial class УчетНДСПоПродукции
	{
		///////////////////////////////////////////////////////////////////////////////
		// ФУНКЦИИ ФОРМИРОВАНИЯ ЗАПРОСОВ
		// Функция формирует текст запроса по регистру "НДС по незавершенному производству".
		//
		// Возвращаемое значение:
		//	Строка – Текст запроса
		//

		public object СформироватьТекстЗапросаПоНезавершенномуПроизводству(/**/)
		{
			/*ТекстЗапроса = "
	|ВЫБРАТЬ
	|	НезавершенноеПроизводство.Подразделение,
	|	НезавершенноеПроизводство.НоменклатурнаяГруппа,
	|	НезавершенноеПроизводство.СтатьяЗатрат,
	|	НезавершенноеПроизводство.СтатьяЗатрат.СтатусМатериальныхЗатрат КАК СтатусМатериальныхЗатрат,
	|	НезавершенноеПроизводство.Затрата,
	|	ЕСТЬNULL(НезавершенноеПроизводство.Затрата.ВестиУчетПоСериямВНЗП, Ложь) КАК ВестиУчетПоСериямВНЗП,
	|	НезавершенноеПроизводство.ХарактеристикаЗатраты,
	|	НезавершенноеПроизводство.СерияЗатраты,
	|	НезавершенноеПроизводство.Заказ,
	|	
	|	НезавершенноеПроизводство.СчетУчета,
	|	
	|	СУММА(НезавершенноеПроизводство.Количество) КАК Количество,
	|	СУММА(НезавершенноеПроизводство.Стоимость) КАК Стоимость,
	|	СУММА(НезавершенноеПроизводство.КоличествоОстаток) КАК КоличествоОстаток,
	|	СУММА(НезавершенноеПроизводство.СтоимостьОстаток) КАК СтоимостьОстаток
	|	
	|ИЗ (
	|
	|	ВЫБРАТЬ
	|		НезавершенноеПроизводство.Подразделение,
	|		НезавершенноеПроизводство.НоменклатурнаяГруппа,
	|		НезавершенноеПроизводство.СтатьяЗатрат,
	|		НезавершенноеПроизводство.Затрата,
	|		НезавершенноеПроизводство.ХарактеристикаЗатраты,
	|
	|		ВЫБОР КОГДА НезавершенноеПроизводство.Затрата.ВестиУчетПоСериямВНЗП ТОГДА
	|			НезавершенноеПроизводство.СерияЗатраты
	|		ИНАЧЕ
	|			ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)
	|		КОНЕЦ СерияЗатраты,
	|
	|		НезавершенноеПроизводство.Заказ,
	|		НезавершенноеПроизводство.СчетУчета,
	|		
	|		0 КАК Количество,
	|		0 КАК Стоимость,
	|		НезавершенноеПроизводство.КоличествоОстаток,
	|		НезавершенноеПроизводство.СтоимостьОстаток
	|		
	|	ИЗ
	|		РегистрНакопления.НДСНезавершенноеПроизводство.Остатки(&КонГраница, 
	|			(Затрата В (&МассивЗатрат)
	|				ИЛИ Затрата = Неопределено)
	|			И Подразделение.Владелец = &Организация
	|			
	|		) КАК НезавершенноеПроизводство
	|		
	|	// Добавим данные о затратах на выпуск.
	|	ОБЪЕДИНИТЬ ВСЕ
	|	
	|	ВЫБРАТЬ
	|		ВЫБОР КОГДА ЗатратыНаВыпуск.ПодразделениеНЗП = &ПустоеПодразделение ТОГДА
	|			ЗатратыНаВыпуск.Подразделение
	|		ИНАЧЕ
	|			ЗатратыНаВыпуск.ПодразделениеНЗП
	|		КОНЕЦ,
	|		ЗатратыНаВыпуск.НоменклатурнаяГруппаНЗП,
	|		ЗатратыНаВыпуск.СтатьяЗатрат,
	|		ВЫБОР КОГДА ЗатратыНаВыпуск.Затрата ССЫЛКА Справочник.Номенклатура ТОГДА
	|			ЗатратыНаВыпуск.Затрата
	|		ИНАЧЕ
	|			&ПустаяНоменклатура
	|		КОНЕЦ КАК Затрата,
	|		
	|		ВЫБОР КОГДА &УчетВРазрезеСерийИХарактеристик ТОГДА
	|			ЗатратыНаВыпуск.ХарактеристикаЗатраты
	|		ИНАЧЕ
	|			ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)
	|		КОНЕЦ ХарактеристикаЗатраты,
	|
	|		ВЫБОР КОГДА ЗатратыНаВыпуск.Затрата.ВестиУчетПоСериямВНЗП
	|			И &УчетВРазрезеСерийИХарактеристик
	|		ТОГДА
	|			ЗатратыНаВыпуск.СерияЗатраты
	|		ИНАЧЕ
	|			ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)
	|		КОНЕЦ СерияЗатраты,
	|
	|		ЗатратыНаВыпуск.ЗаказНЗП,
	|		ЗатратыНаВыпуск.СчетУчета,
	|			
	|		СУММА(ЗатратыНаВыпуск.Количество) КАК Количество,
	|		СУММА(ЗатратыНаВыпуск.Сумма) КАК Стоимость,
	|		0,
	|		0
	|	ИЗ
	|		РегистрНакопления.ЗатратыНаВыпускПродукцииБухгалтерскийУчет КАК ЗатратыНаВыпуск
	|	ГДЕ
	|		ЗатратыНаВыпуск.Период МЕЖДУ &НачДата И &КонДата
	|		И ЗатратыНаВыпуск.КодОперации В (&КодыОперацийЗатратыНаВыпуск)
	|		И ЗатратыНаВыпуск.СтатьяЗатрат.СтатусМатериальныхЗатрат <> &СтатусМатериальныхЗатратПринятые
	|		И (ЗатратыНаВыпуск.Затрата В (&МассивЗатрат)
	|			ИЛИ ЗатратыНаВыпуск.Затрата = Неопределено)
	|		И ЗатратыНаВыпуск.Организация = &Организация
	|		
	|	СГРУППИРОВАТЬ ПО
	|		ВЫБОР КОГДА ЗатратыНаВыпуск.ПодразделениеНЗП = &ПустоеПодразделение ТОГДА
	|			ЗатратыНаВыпуск.Подразделение
	|		ИНАЧЕ
	|			ЗатратыНаВыпуск.ПодразделениеНЗП
	|		КОНЕЦ,
	|		ЗатратыНаВыпуск.СчетУчета,
	|		ЗатратыНаВыпуск.НоменклатурнаяГруппаНЗП,
	|		ЗатратыНаВыпуск.СтатьяЗатрат,
	|		ВЫБОР КОГДА ЗатратыНаВыпуск.Затрата ССЫЛКА Справочник.Номенклатура ТОГДА
	|			ЗатратыНаВыпуск.Затрата
	|		ИНАЧЕ
	|			&ПустаяНоменклатура
	|		КОНЕЦ,
	|		ВЫБОР КОГДА &УчетВРазрезеСерийИХарактеристик ТОГДА
	|			ЗатратыНаВыпуск.ХарактеристикаЗатраты
	|		ИНАЧЕ
	|			ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)
	|		КОНЕЦ,
	|		ВЫБОР КОГДА ЗатратыНаВыпуск.Затрата.ВестиУчетПоСериямВНЗП
	|			И &УчетВРазрезеСерийИХарактеристик
	|		ТОГДА
	|			ЗатратыНаВыпуск.СерияЗатраты
	|		ИНАЧЕ
	|			ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)
	|		КОНЕЦ,
	|		ЗатратыНаВыпуск.ЗаказНЗП
	|		
	|	) КАК НезавершенноеПроизводство
	|	
	|СГРУППИРОВАТЬ ПО
	|	НезавершенноеПроизводство.Подразделение,
	|	НезавершенноеПроизводство.СчетУчета,
	|	НезавершенноеПроизводство.НоменклатурнаяГруппа,
	|	НезавершенноеПроизводство.СтатьяЗатрат,
	|	НезавершенноеПроизводство.Затрата,
	|	ЕСТЬNULL(НезавершенноеПроизводство.Затрата.ВестиУчетПоСериямВНЗП, Ложь),
	|	НезавершенноеПроизводство.ХарактеристикаЗатраты,
	|	НезавершенноеПроизводство.СерияЗатраты,
	|	НезавершенноеПроизводство.Заказ
	|	
	|УПОРЯДОЧИТЬ ПО
	|	НезавершенноеПроизводство.СчетУчета,
	|	НезавершенноеПроизводство.Подразделение,
	|	НезавершенноеПроизводство.НоменклатурнаяГруппа,
	|	НезавершенноеПроизводство.Заказ,
	|	НезавершенноеПроизводство.СтатьяЗатрат,
	|	НезавершенноеПроизводство.Затрата,
	|	НезавершенноеПроизводство.ХарактеристикаЗатраты,
	|	НезавершенноеПроизводство.СерияЗатраты
	|";*/
			return null;
		}
		// СформироватьТекстЗапросаПоНезавершенномуПроизводству()
		// Процедура устанавливает параметры запроса по незавершенному производству.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура - Реквизиты документа "Расчет НДС по продукции"
		//	Запрос - Запрос
		//

		public void УстановитьПараметрыЗапросПоНезавершенномуПроизводству(/*
	СтруктураШапкиДокумента,
	Запрос
	*/)
		{
			//Запрос.УстановитьПараметр("Организация", СтруктураШапкиДокумента.Организация);
			//Запрос.УстановитьПараметр("НачГраница", СтруктураШапкиДокумента.НачГраница);
			//Запрос.УстановитьПараметр("КонГраница", СтруктураШапкиДокумента.КонГраница);
			//Запрос.УстановитьПараметр("НачДата", СтруктураШапкиДокумента.НачДата);
			//Запрос.УстановитьПараметр("КонДата", СтруктураШапкиДокумента.КонДата);
			//Запрос.УстановитьПараметр("УчетВРазрезеСерийИХарактеристик", СтруктураШапкиДокумента.ПартионныйУчетНДСвРазрезеСерийИХарактеристик);
			//Запрос.УстановитьПараметр("СтатусМатериальныхЗатратПринятые", Перечисления.СтатусыМатериальныхЗатратНаПроизводство.ПринятыеВПереработку);
			//Запрос.УстановитьПараметр("ПустоеПодразделение", Справочники.ПодразделенияОрганизаций.ПустаяСсылка());
			//Запрос.УстановитьПараметр("ПустаяНоменклатура", Справочники.Номенклатура.ПустаяСсылка());
			//МассивКодыОпераций = Новый Массив;
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ПрямыеЗатраты);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ОтрицательныеЗатраты);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ВозвратМатериаловИзПроизводстваРасч);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ВозвратМатериаловИзПроизводстваФикс);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.СписаниеНЗП);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.СписаниеНЗПФикс);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ОприходованиеНЗП);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.КорректировкаНЗПРасч);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.КорректировкаНЗПФикс);
			//Запрос.УстановитьПараметр("КодыОперацийЗатратыНаВыпуск", МассивКодыОпераций);
		}
		// УстановитьПараметрыЗапросПоНезавершенномуПроизводству()
		// Функция формирует запрос по регистру "НДС по незавершенному производству".
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура - Реквизиты документа "Расчет НДС по продукции"
		//	ТекстЗапроса - Текст - Текст запроса
		//
		// Возвращаемое значение:
		//	Запрос - Запрос по регистру "НДС по незавершенному производству".
		//

		public object СформироватьЗапросПоНезавершенномуПроизводству(/*
	СтруктураШапкиДокумента,
	ТекстЗапроса
	*/)
		{
			//Запрос = Новый Запрос;
			//Запрос.Текст = ТекстЗапроса;
			/*УстановитьПараметрыЗапросПоНезавершенномуПроизводству(
		СтруктураШапкиДокумента,
		Запрос
		);*/
			return null;
		}
		// СформироватьЗапросПоНезавершенномуПроизводству()()
		///////////////////////////////////////////////////////////////////////////////
		// Функция формирует текст запроса по регистру "НДС по незавершенному производству"
		// с детализацией до счетов-фактур.
		//
		// Возвращаемое значение:
		//	Строка – Текст запроса
		//

		public object СформироватьТекстЗапросаПоНезавершенномуПроизводствуПоСчетамФактурам(/**/)
		{
			/*ТекстЗапроса = "
	|ВЫБРАТЬ
	|	НезавершенноеПроизводство.Подразделение,
	|	НезавершенноеПроизводство.НоменклатурнаяГруппа,
	|	НезавершенноеПроизводство.СтатьяЗатрат,
	|	НезавершенноеПроизводство.СтатьяЗатрат.СтатусМатериальныхЗатрат КАК СтатусМатериальныхЗатрат,
	|	НезавершенноеПроизводство.Затрата,
	|	ЕСТЬNULL(НезавершенноеПроизводство.Затрата.ВестиУчетПоСериямВНЗП, Ложь) КАК ВестиУчетПоСериямВНЗП,
	|	НезавершенноеПроизводство.ХарактеристикаЗатраты,
	|	НезавершенноеПроизводство.СерияЗатраты,
	|	НезавершенноеПроизводство.Заказ,
	|	НезавершенноеПроизводство.СчетУчета,
	|
	|	НезавершенноеПроизводство.ВидЦенности,
	|	НезавершенноеПроизводство.СчетФактура,
	|	НезавершенноеПроизводство.СтавкаНДС,
	|	НезавершенноеПроизводство.СчетУчетаНДС,
	|	НезавершенноеПроизводство.НДСВключенВСтоимость,
	|	
	|	НезавершенноеПроизводство.КоличествоОстаток,
	|	НезавершенноеПроизводство.СтоимостьОстаток,
	|	НезавершенноеПроизводство.НДСОстаток
	|	
	|ИЗ
	|	РегистрНакопления.НДСНезавершенноеПроизводство.Остатки(&КонГраница, 
	|		(Затрата В (&МассивЗатрат)
	|			ИЛИ Затрата = Неопределено)
	|		И Подразделение.Владелец = &Организация
	|		
	|	) КАК НезавершенноеПроизводство
	|	
	|УПОРЯДОЧИТЬ ПО
	|	НезавершенноеПроизводство.СчетУчета,
	|	НезавершенноеПроизводство.Подразделение,
	|	НезавершенноеПроизводство.НоменклатурнаяГруппа,
	|	НезавершенноеПроизводство.Заказ,
	|	НезавершенноеПроизводство.СтатьяЗатрат,
	|	НезавершенноеПроизводство.Затрата,
	|	НезавершенноеПроизводство.ХарактеристикаЗатраты,
	|	НезавершенноеПроизводство.СерияЗатраты,
	|	НезавершенноеПроизводство.СчетФактура.Дата Возр
	|";*/
			return null;
		}
		// СформироватьТекстЗапросаПоНезавершенномуПроизводствуПоСчетамФактурам()
		///////////////////////////////////////////////////////////////////////////////
		// Функция формирует текст запроса по регистру "Затраты на выпуск".
		//
		// Возвращаемое значение:
		//	Строка – Текст запроса
		//

		public object СформироватьТекстЗапросаПоЗатратамНаВыпуск(/**/)
		{
			/*ТекстЗапроса = "
	|ВЫБРАТЬ
	|	ЗатратыНаВыпуск.Организация,
	|	ЗатратыНаВыпуск.СчетУчета,
	|	ЗатратыНаВыпуск.Подразделение,
	|	ЗатратыНаВыпуск.НоменклатурнаяГруппа,
	|	ЗатратыНаВыпуск.Продукция,
	|	ЗатратыНаВыпуск.ХарактеристикаПродукции,
	|	ЗатратыНаВыпуск.СерияПродукции,
	|	ЗатратыНаВыпуск.Спецификация,
	|	ЗатратыНаВыпуск.Заказ,
	|	ЗатратыНаВыпуск.КодОперации,
	|	
	|	ЗатратыНаВыпуск.СтатьяЗатрат,
	|	ЗатратыНаВыпуск.СтатьяЗатрат.ВидЗатрат КАК ВидЗатрат,
	|	ВЫБОР КОГДА ЗатратыНаВыпуск.Затрата ССЫЛКА Справочник.Номенклатура ТОГДА
	|		ЗатратыНаВыпуск.Затрата
	|	ИНАЧЕ
	|		&ПустаяНоменклатура
	|	КОНЕЦ КАК Затрата,
	|	ЕСТЬNULL(ЗатратыНаВыпуск.Затрата.ВестиУчетПоСериямВНЗП, Ложь) КАК ВестиУчетПоСериямВНЗП,
	|	
	|	ВЫБОР КОГДА &УчетВРазрезеСерийИХарактеристик ТОГДА
	|		ЗатратыНаВыпуск.ХарактеристикаЗатраты
	|	ИНАЧЕ
	|		ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)
	|	КОНЕЦ КАК ХарактеристикаЗатраты,
	|
	|	ВЫБОР КОГДА &УчетВРазрезеСерийИХарактеристик ТОГДА
	|		ЗатратыНаВыпуск.СерияЗатраты
	|	ИНАЧЕ
	|		ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)
	|	КОНЕЦ КАК СерияЗатраты,
	|	
	|	ЗатратыНаВыпуск.НоменклатурнаяГруппаНЗП,
	|	ЗатратыНаВыпуск.ЗаказНЗП,
	|	ЗатратыНаВыпуск.ПодразделениеНЗП,
	|	
	|	ВЫБОР КОГДА ЗатратыНаВыпуск.ПодразделениеНЗП = &ПустоеПодразделение ТОГДА
	|		ЗатратыНаВыпуск.Подразделение
	|	ИНАЧЕ
	|		ЗатратыНаВыпуск.ПодразделениеНЗП
	|	КОНЕЦ КАК ПодразделениеСписанияНЗП,
	|
	|	Распределение.КорректировкаНЗП,
	|	Распределение.ОприходованиеНЗП,
	|	Распределение.ВозвратИзНЗП,
	|
	|	ЕСТЬNULL(НоменклатураДляРеализацииБезНДС.СложныйУчетНДС, Ложь) КАК СложныйУчетНДС,
	|	
	|	СУММА(ЗатратыНаВыпуск.Сумма) КАК Стоимость,
	|	СУММА(ЗатратыНаВыпуск.Количество) КАК Количество
	|	
	|ИЗ
	|	РегистрНакопления.ЗатратыНаВыпускПродукцииБухгалтерскийУчет КАК ЗатратыНаВыпуск
	|
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ (
	|		ВЫБРАТЬ
	|			Распределение.КорректировкаНЗП,
	|			Распределение.ОприходованиеНЗП,
	|			Распределение.ВозвратИзНЗП,
	|			Распределение.ВстречныйВыпуск,
	|			Распределение.Подразделение,
	|			Распределение.НоменклатурнаяГруппа,
	|			Распределение.СтатьяЗатрат,
	|			Распределение.Затрата,
	|			Распределение.ХарактеристикаЗатраты,
	|			Распределение.СерияЗатраты
	|		ИЗ			
	|			РегистрСведений.РаспределениеЗатратПоПеределамОрганизаций КАК Распределение
	|		ГДЕ
	|			Распределение.Период МЕЖДУ &НачДата И &КонДата
	|			И Распределение.НомерПередела = &НомерПередела
	|			И Распределение.Организация = &Организация
	|			
	|		) КАК Распределение
	|	ПО 
	|		ЗатратыНаВыпуск.Подразделение = Распределение.Подразделение
	|		И ЗатратыНаВыпуск.Затрата = Распределение.Затрата
	|		И ЗатратыНаВыпуск.ХарактеристикаЗатраты = Распределение.ХарактеристикаЗатраты
	|		И ЗатратыНаВыпуск.СерияЗатраты = Распределение.СерияЗатраты
	|		И ЗатратыНаВыпуск.НоменклатурнаяГруппа = Распределение.НоменклатурнаяГруппа
	|		И ЗатратыНаВыпуск.СтатьяЗатрат = Распределение.СтатьяЗатрат
	|
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ (
	|		ВЫБРАТЬ РАЗЛИЧНЫЕ
	|			ВыпускПродукции.Подразделение,
	|			ВыпускПродукции.Продукция,
	|			ВыпускПродукции.ХарактеристикаПродукции,
	|			ВыпускПродукции.СерияПродукции,
	|			ВыпускПродукции.Спецификация,
	|			ВыпускПродукции.НоменклатурнаяГруппа,
	|			ВыпускПродукции.Заказ,
	|			ВыпускПродукции.СчетУчетаНЗП,
	|			ВыпускПродукции.Заказ
	|		ИЗ
	|			РегистрНакопления.ВыпускПродукцииБухгалтерскийУчет КАК ВыпускПродукции
	|		ГДЕ
	|			ВыпускПродукции.Период МЕЖДУ &НачДата И &КонДата
	|			И ВыпускПродукции.Организация = &Организация
	|			И ВыпускПродукции.КодОперации <> &ВыпускПродукцииПоФиксированнойСтоимости
	|		
	|		) КАК ВыпускПродукции
	|	ПО
	|		ВыпускПродукции.Подразделение = ЗатратыНаВыпуск.Подразделение
	|	 	И ВыпускПродукции.НоменклатурнаяГруппа = ЗатратыНаВыпуск.НоменклатурнаяГруппа
	|	 	И ВыпускПродукции.Продукция = ЗатратыНаВыпуск.Продукция
	|	 	И ВыпускПродукции.ХарактеристикаПродукции = ЗатратыНаВыпуск.ХарактеристикаПродукции
	|	 	И ВыпускПродукции.СерияПродукции = ЗатратыНаВыпуск.СерияПродукции
	|	 	И ВыпускПродукции.Спецификация = ЗатратыНаВыпуск.Спецификация
	|		И ВыпускПродукции.Заказ = ЗатратыНаВыпуск.Заказ
	|	 	И ВыпускПродукции.СчетУчетаНЗП = ЗатратыНаВыпуск.СчетУчета
	|
	|	ЛЕВОЕ СОЕДИНЕНИЕ
	|		РегистрСведений.НоменклатураДляРеализацииБезНДСиНДС0.СрезПоследних(&КонДата,
	|			Организация = &Организация
	|		) КАК НоменклатураДляРеализацииБезНДС
	|	ПО
	|		НоменклатураДляРеализацииБезНДС.Номенклатура = ЗатратыНаВыпуск.Продукция
	|
	|ГДЕ
	|	ЗатратыНаВыпуск.Период МЕЖДУ &НачДата И &КонДата
	|	И ЗатратыНаВыпуск.КодОперации В (&КодыОпераций)
	|	И (ЗатратыНаВыпуск.Затрата В (&МассивЗатрат)
	|	   ИЛИ ЗатратыНаВыпуск.Затрата = Неопределено)
	|	
	|	И ЗатратыНаВыпуск.Организация = &Организация
	|	
	|	И ( (Распределение.КорректировкаНЗП
	|	     И ЗатратыНаВыпуск.КодОперации В (&КодыОперацииКорректировка))
	|	   ИЛИ (Не Распределение.КорректировкаНЗП
	|	    И Не ЗатратыНаВыпуск.КодОперации В (&КодыОперацииКорректировка)) )
	|	
	|	И ( (Распределение.ВозвратИзНЗП
	|	     И ЗатратыНаВыпуск.КодОперации В (&КодыОперацииВозврат))
	|	   ИЛИ (Не Распределение.ВозвратИзНЗП
	|	    И Не ЗатратыНаВыпуск.КодОперации В (&КодыОперацииВозврат)) )
	|	
	|	И ( (Распределение.ОприходованиеНЗП
	|	     И ЗатратыНаВыпуск.КодОперации В (&КодыОперацииОприходованиеНЗП))
	|	   ИЛИ (Не Распределение.ОприходованиеНЗП
	|	    И Не ЗатратыНаВыпуск.КодОперации В (&КодыОперацииОприходованиеНЗП)) )
	|
	|СГРУППИРОВАТЬ ПО
	|	ЗатратыНаВыпуск.Организация,
	|	ЗатратыНаВыпуск.СчетУчета,
	|	ЗатратыНаВыпуск.Подразделение,
	|	ЗатратыНаВыпуск.НоменклатурнаяГруппа,
	|	ЗатратыНаВыпуск.Продукция,
	|	ЗатратыНаВыпуск.ХарактеристикаПродукции,
	|	ЗатратыНаВыпуск.СерияПродукции,
	|	ЗатратыНаВыпуск.Спецификация,
	|	ЗатратыНаВыпуск.Заказ,
	|	ЗатратыНаВыпуск.КодОперации,
	|	
	|	ЗатратыНаВыпуск.СтатьяЗатрат,
	|	ВЫБОР КОГДА ЗатратыНаВыпуск.Затрата ССЫЛКА Справочник.Номенклатура ТОГДА
	|		ЗатратыНаВыпуск.Затрата
	|	ИНАЧЕ
	|		&ПустаяНоменклатура
	|	КОНЕЦ,
	|	ЕСТЬNULL(ЗатратыНаВыпуск.Затрата.ВестиУчетПоСериямВНЗП, Ложь),
	|	
	|	ВЫБОР КОГДА &УчетВРазрезеСерийИХарактеристик ТОГДА
	|		ЗатратыНаВыпуск.ХарактеристикаЗатраты
	|	ИНАЧЕ
	|		ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)
	|	КОНЕЦ,
	|
	|	ВЫБОР КОГДА &УчетВРазрезеСерийИХарактеристик ТОГДА
	|		ЗатратыНаВыпуск.СерияЗатраты
	|	ИНАЧЕ
	|		ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)
	|	КОНЕЦ,
	|	
	|	ЗатратыНаВыпуск.НоменклатурнаяГруппаНЗП,
	|	ЗатратыНаВыпуск.ЗаказНЗП,
	|	ЗатратыНаВыпуск.ПодразделениеНЗП,
	|	
	|	ВЫБОР КОГДА ЗатратыНаВыпуск.ПодразделениеНЗП = &ПустоеПодразделение ТОГДА
	|		ЗатратыНаВыпуск.Подразделение
	|	ИНАЧЕ
	|		ЗатратыНаВыпуск.ПодразделениеНЗП
	|	КОНЕЦ,
	|
	|	Распределение.КорректировкаНЗП,
	|	Распределение.ОприходованиеНЗП,
	|	Распределение.ВозвратИзНЗП,
	|	ЕСТЬNULL(НоменклатураДляРеализацииБезНДС.СложныйУчетНДС, Ложь)
	|	
	|УПОРЯДОЧИТЬ ПО
	|	ЗатратыНаВыпуск.Организация,
	|	ЗатратыНаВыпуск.СчетУчета,
	|	ПодразделениеСписанияНЗП,
	|	ЗатратыНаВыпуск.НоменклатурнаяГруппаНЗП,
	|	ЗатратыНаВыпуск.ЗаказНЗП,
	|	ЗатратыНаВыпуск.СтатьяЗатрат,
	|	Затрата,
	|	ХарактеристикаЗатраты,
	|	СерияЗатраты,
	|
	|	ЗатратыНаВыпуск.Подразделение,
	|	ЗатратыНаВыпуск.НоменклатурнаяГруппа,
	|	ЗатратыНаВыпуск.Продукция,
	|	ЗатратыНаВыпуск.ХарактеристикаПродукции,
	|	ЗатратыНаВыпуск.СерияПродукции,
	|	ЗатратыНаВыпуск.Спецификация,
	|	ЗатратыНаВыпуск.Заказ,
	|	ЗатратыНаВыпуск.КодОперации
	|";*/
			return null;
		}
		// СформироватьТекстЗапросаПоЗатратамНаВыпуск()
		// Процедура устанавливает параметры запроса по затратам на выпуск.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура - Реквизиты документа "Расчет НДС по продукции"
		//	Запрос - Запрос
		//

		public void УстановитьПараметрыЗапросПоЗатратамНаВыпуск(/*
	СтруктураШапкиДокумента,
	Запрос
	*/)
		{
			//Запрос.УстановитьПараметр("Организация", СтруктураШапкиДокумента.Организация);
			//Запрос.УстановитьПараметр("НачГраница", СтруктураШапкиДокумента.НачГраница);
			//Запрос.УстановитьПараметр("КонГраница", СтруктураШапкиДокумента.КонГраница);
			//Запрос.УстановитьПараметр("НачДата", СтруктураШапкиДокумента.НачДата);
			//Запрос.УстановитьПараметр("КонДата", СтруктураШапкиДокумента.КонДата);
			//Запрос.УстановитьПараметр("СпособОценкиСтоимости", 	Перечисления.СпособыОценкиСтоимостиВстречногоВыпуска.ПоРасчетнойСтоимости);
			//Запрос.УстановитьПараметр("СтатусМатериальныхЗатратПринятые", Перечисления.СтатусыМатериальныхЗатратНаПроизводство.ПринятыеВПереработку);
			//Запрос.УстановитьПараметр("УчетВРазрезеСерийИХарактеристик", СтруктураШапкиДокумента.ПартионныйУчетНДСвРазрезеСерийИХарактеристик);
			//Запрос.УстановитьПараметр("ПустоеПодразделение", Справочники.ПодразделенияОрганизаций.ПустаяСсылка());
			//Запрос.УстановитьПараметр("ПустаяНоменклатура", Справочники.Номенклатура.ПустаяСсылка());
			//Запрос.УстановитьПараметр("ВыпускПродукцииПоФиксированнойСтоимости", Перечисления.КодыОперацийВыпускПродукции.ВыпускПродукцииПоФиксированнойСтоимости);
			//МассивКодыОпераций = Новый Массив;
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ПрямыеЗатраты);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ВозвратМатериаловИзПроизводстваРасч);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ВозвратМатериаловИзПроизводстваФикс);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.СписаниеНЗП);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.СписаниеНЗПФикс);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.КорректировкаНЗПРасч);
			//МассивКодыОпераций.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.КорректировкаНЗПФикс);
			//Запрос.УстановитьПараметр("КодыОпераций", МассивКодыОпераций);
			//МассивКодовОперацийКорректировка = Новый Массив;
			//МассивКодовОперацийКорректировка.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.КорректировкаНЗПРасч);
			//МассивКодовОперацийКорректировка.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.КорректировкаНЗПФикс);
			//Запрос.УстановитьПараметр("КодыОперацииКорректировка", МассивКодовОперацийКорректировка);
			//МассивКодовОперацийКорректировка = Новый Массив;
			//МассивКодовОперацийКорректировка.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ВозвратМатериаловИзПроизводстваРасч);
			//МассивКодовОперацийКорректировка.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ВозвратМатериаловИзПроизводстваФикс);
			//Запрос.УстановитьПараметр("КодыОперацииВозврат", МассивКодовОперацийКорректировка);
			//МассивКодовОперацийОприходованиеНЗП = Новый Массив;
			//Запрос.УстановитьПараметр("КодыОперацииОприходованиеНЗП", МассивКодовОперацийОприходованиеНЗП);
		}
		// УстановитьПараметрыЗапросПоЗатратамНаВыпуск()
		// Функция формирует запрос по регистру "Затраты на выпуск".
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура - Реквизиты документа "Расчет НДС по продукции"
		//
		// Возвращаемое значение:
		//	Запрос - Запрос по регистру "Затраты на выпуск".
		//

		public object СформироватьЗапросПоЗатратамНаВыпуск(/*
	СтруктураШапкиДокумента
	*/)
		{
			//ТекстЗапроса = СформироватьТекстЗапросаПоЗатратамНаВыпуск();
			//Запрос = Новый Запрос;
			//Запрос.Текст = ТекстЗапроса;
			/*УстановитьПараметрыЗапросПоЗатратамНаВыпуск(
		СтруктураШапкиДокумента,
		Запрос
		);*/
			return null;
		}
		// СформироватьЗапросПоНезавершенномуПроизводству()
		///////////////////////////////////////////////////////////////////////////////
		// Функция формирует текст запроса по регистру "Выпуск продукции".
		//
		// Возвращаемое значение:
		//   Текст – текст запроса по регистру "Выпуск продукции".
		//

		public object СформироватьТекстЗапросаПоВыпускуПродукции(/**/)
		{
			/*ТекстЗапроса = "
	|ВЫБРАТЬ
	|	ВыпускПродукции.Организация,
	|	ВыпускПродукции.Подразделение,
	|	ВыпускПродукции.НоменклатурнаяГруппа,
	|	
	|	ВыпускПродукции.Продукция,
	|	ВыпускПродукции.Продукция.Услуга КАК Услуга,
	|	ВыпускПродукции.Продукция.ВестиПартионныйУчетПоСериям КАК ВестиПартионныйУчетПоСериям,
	|	ВыпускПродукции.Продукция.ВестиУчетПоСериямВНЗП КАК ВестиУчетПоСериямВНЗП,
	|	
	|	ВыпускПродукции.ХарактеристикаПродукции,
	|	ВыпускПродукции.СерияПродукции,
	|	ВыпускПродукции.Спецификация,
	|	ВыпускПродукции.Заказ,
	|	
	|	ВыпускПродукции.ВариантВыпускаПродукции,
	|	ВыпускПродукции.ДокументВыпуска,
	|	ВыпускПродукции.ДокументВыпуска.Дата КАК ДокументВыпускаДата,
	|	ВыпускПродукции.КодОперации,
	|	
	|	ВыпускПродукции.ПодразделениеПолучатель,
	|	ВыпускПродукции.НоменклатурнаяГруппаПолучатель,
	|	
	|	ВыпускПродукции.СтатьяЗатратПолучатель,
	|	ВыпускПродукции.СтатьяЗатратПоВозврату,
	|
	|	ВЫБОР КОГДА Не ВыпускПродукции.СтатьяЗатратПоВозврату = &ПустаяСтатьяЗатрат ТОГДА
	|		ВыпускПродукции.СтатьяЗатратПоВозврату.ВидЗатрат
	|	ИНАЧЕ
	|		ВыпускПродукции.СтатьяЗатратПолучатель.ВидЗатрат
	|	КОНЕЦ КАК ВидЗатрат,
	|	
	|	ВЫБОР КОГДА Не ВыпускПродукции.СтатьяЗатратПоВозврату = &ПустаяСтатьяЗатрат ТОГДА
	|		ВыпускПродукции.СтатьяЗатратПоВозврату.ХарактерЗатрат
	|	ИНАЧЕ
	|		ВыпускПродукции.СтатьяЗатратПолучатель.ХарактерЗатрат
	|	КОНЕЦ КАК ХарактерЗатрат,
	|	
	|	ВыпускПродукции.СкладПолучатель,
	|	ВыпускПродукции.Качество,
	|	
	|	ВыпускПродукции.ЗаказПолучатель,
	|	ВыпускПродукции.ЗаказПолучатель.ВидОперации КАК ВидОперации,
	|	ЕСТЬNULL(
	|		ВыпускПродукции.ЗаказПолучатель.ДоговорКонтрагента.ОбособленныйУчетТоваровПоЗаказамПокупателей,
	|		Ложь
	|		) КАК ОбособленныйУчетТоваровПоЗаказамПокупателей,
	|		
	|	ВыпускПродукции.СчетУчетаНЗП,
	|	ВыпускПродукции.СчетУчетаНЗП КАК СчетЗатрат,
	|	ВыпускПродукции.СчетДт,
	|	ВыпускПродукции.СубконтоДт1,
	|	ВыпускПродукции.СубконтоДт2,
	|	ВыпускПродукции.СубконтоДт3,
	|	
	|	ВЫБОР КОГДА ВыпускПродукции.КодОперации В (&КодыОперацииВыпускаКорректировка) ТОГДА
	|		Истина
	|	ИНАЧЕ
	|		Ложь
	|	КОНЕЦ КАК КорректировкаНЗП,
	|			
	|	ВЫБОР КОГДА ВыпускПродукции.КодОперации В (&КодыОперацииВыпускаВозврат) ТОГДА
	|		Истина
	|	ИНАЧЕ
	|		Ложь
	|	КОНЕЦ КАК ВозвратИзНЗП,
	|			
	|	ВЫБОР КОГДА ВыпускПродукции.КодОперации В (&КодыОперацииВыпускаОприходование) ТОГДА
	|		Истина
	|	ИНАЧЕ
	|		Ложь
	|	КОНЕЦ КАК ОприходованиеНЗП,
	|
	|	СУММА(
	|		ВЫБОР КОГДА ВыпускПродукции.КодОперации В (&КодыОперацииВыпускаОприходование) ТОГДА
	|			ВыпускПродукции.Количество
	|		ИНАЧЕ
	|			0
	|		КОНЕЦ
	|		) КАК КоличествоОприходование,
	|
	|	ЕСТЬNULL(НДСРеализация0.Экспорт, Ложь) КАК Экспорт,
	|	
	|	СУММА(ВыпускПродукции.Количество) КАК Количество
	|	
	|ИЗ
	|	РегистрНакопления.ВыпускПродукцииБухгалтерскийУчет КАК ВыпускПродукции
	|	
	|	ЛЕВОЕ СОЕДИНЕНИЕ (
	|		ВЫБРАТЬ РАЗЛИЧНЫЕ
	|			Истина КАК Экспорт,
	|			НДСРеализация0.СчетФактура
	|		ИЗ
	|			РегистрНакопления.НДСРеализация0.Обороты(&НачГраница, &КонГраница, ,
	|				Организация = &Организация
	|				И СтавкаНДС = &СтавкаНДС0
	|			) КАК НДСРеализация0
	|		) КАК НДСРеализация0
	|	ПО
	|		ВыпускПродукции.ДокументВыпуска = НДСРеализация0.СчетФактура
	|	
	|ГДЕ
	|	ВыпускПродукции.Период МЕЖДУ &НачДата И &КонДата
	|	И ВыпускПродукции.Организация = &Организация
	|	И Не ВыпускПродукции.КодОперации В (&КодыОперацийВыпускаФиксСтоимость)
	|	
	|	И ВыпускПродукции.Подразделение В (
	|			ВЫБРАТЬ РАЗЛИЧНЫЕ
	|				Распределение.Подразделение
	|			ИЗ			
	|				РегистрСведений.РаспределениеПродукцииПоПеределамОрганизаций КАК Распределение
	|			ГДЕ
	|				Распределение.Период МЕЖДУ &НачДата И &КонДата
	|				И Распределение.НомерПередела = &НомерПередела
	|				//ДляРеглУчета И Распределение.Организация = &Организация
	|			)
	|	И ВыпускПродукции.Продукция В (
	|			ВЫБРАТЬ РАЗЛИЧНЫЕ
	|				Распределение.Продукция
	|			ИЗ			
	|				РегистрСведений.РаспределениеПродукцииПоПеределамОрганизаций КАК Распределение
	|			ГДЕ
	|				Распределение.Период МЕЖДУ &НачДата И &КонДата
	|				И Распределение.НомерПередела = &НомерПередела
	|				//ДляРеглУчета И Распределение.Организация = &Организация
	|			)
	|
	|СГРУППИРОВАТЬ ПО
	|	ВыпускПродукции.Организация,
	|	ВыпускПродукции.Подразделение,
	|	ВыпускПродукции.НоменклатурнаяГруппа,
	|	
	|	ВыпускПродукции.Продукция,
	|	ВыпускПродукции.ХарактеристикаПродукции,
	|	ВыпускПродукции.СерияПродукции,
	|	ВыпускПродукции.Спецификация,
	|	ВыпускПродукции.Заказ,
	|	
	|	ВыпускПродукции.ВариантВыпускаПродукции,
	|	ВыпускПродукции.ДокументВыпуска,
	|	ВыпускПродукции.КодОперации,
	|	
	|	ВыпускПродукции.ПодразделениеПолучатель,
	|	ВыпускПродукции.НоменклатурнаяГруппаПолучатель,
	|	ВыпускПродукции.СтатьяЗатратПолучатель,
	|	ВыпускПродукции.СтатьяЗатратПоВозврату,
	|
	|	ВЫБОР КОГДА Не ВыпускПродукции.СтатьяЗатратПоВозврату = &ПустаяСтатьяЗатрат ТОГДА
	|		ВыпускПродукции.СтатьяЗатратПоВозврату.ВидЗатрат
	|	ИНАЧЕ
	|		ВыпускПродукции.СтатьяЗатратПолучатель.ВидЗатрат
	|	КОНЕЦ,
	|	
	|	ВЫБОР КОГДА Не ВыпускПродукции.СтатьяЗатратПоВозврату = &ПустаяСтатьяЗатрат ТОГДА
	|		ВыпускПродукции.СтатьяЗатратПоВозврату.ХарактерЗатрат
	|	ИНАЧЕ
	|		ВыпускПродукции.СтатьяЗатратПолучатель.ХарактерЗатрат
	|	КОНЕЦ,
	|	
	|	ВыпускПродукции.СкладПолучатель,
	|	ВыпускПродукции.Качество,
	|	
	|	ВыпускПродукции.ЗаказПолучатель,
	|	ЕСТЬNULL(
	|		ВыпускПродукции.ЗаказПолучатель.ДоговорКонтрагента.ОбособленныйУчетТоваровПоЗаказамПокупателей,
	|		Ложь
	|		),
	|	
	|	ВыпускПродукции.СчетУчетаНЗП,
	|	ВыпускПродукции.СчетДт,
	|	ВыпускПродукции.СубконтоДт1,
	|	ВыпускПродукции.СубконтоДт2,
	|	ВыпускПродукции.СубконтоДт3,
	|	
	|	ВЫБОР КОГДА ВыпускПродукции.КодОперации В (&КодыОперацииВыпускаКорректировка) ТОГДА
	|		Истина
	|	ИНАЧЕ
	|		Ложь
	|	КОНЕЦ,
	|
	|	ВЫБОР КОГДА ВыпускПродукции.КодОперации В (&КодыОперацииВыпускаВозврат) ТОГДА
	|		Истина
	|	ИНАЧЕ
	|		Ложь
	|	КОНЕЦ,
	|
	|	ВЫБОР КОГДА ВыпускПродукции.КодОперации В (&КодыОперацииВыпускаОприходование) ТОГДА
	|		Истина
	|	ИНАЧЕ
	|		Ложь
	|	КОНЕЦ,
	|
	|	ЕСТЬNULL(НДСРеализация0.Экспорт, Ложь)
	|
	|УПОРЯДОЧИТЬ ПО
	|	ВыпускПродукции.Организация,
	|	ВыпускПродукции.Подразделение,
	|	ВыпускПродукции.НоменклатурнаяГруппа,
	|	
	|	ВыпускПродукции.Продукция,
	|	ВыпускПродукции.ХарактеристикаПродукции,
	|	ВыпускПродукции.СерияПродукции,
	|	ВыпускПродукции.Спецификация,
	|	ВыпускПродукции.Заказ,
	|	ВыпускПродукции.СчетУчетаНЗП,
	|	
	|	ВЫБОР КОГДА ВыпускПродукции.КодОперации В (&КодыОперацииВыпускаКорректировка) ТОГДА
	|		Истина
	|	ИНАЧЕ
	|		Ложь
	|	КОНЕЦ,
	|
	|	ВЫБОР КОГДА ВыпускПродукции.КодОперации В (&КодыОперацииВыпускаВозврат) ТОГДА
	|		Истина
	|	ИНАЧЕ
	|		Ложь
	|	КОНЕЦ,
	|
	|	ВЫБОР КОГДА ВыпускПродукции.КодОперации В (&КодыОперацииВыпускаОприходование) ТОГДА
	|		Истина
	|	ИНАЧЕ
	|		Ложь
	|	КОНЕЦ,
	|	
	|	ВыпускПродукции.ВариантВыпускаПродукции,
	|	ВыпускПродукции.ДокументВыпуска,
	|	ВыпускПродукции.КодОперации,
	|	
	|	ВыпускПродукции.ПодразделениеПолучатель,
	|	ВыпускПродукции.НоменклатурнаяГруппаПолучатель,
	|	ВыпускПродукции.СтатьяЗатратПолучатель,
	|	ВыпускПродукции.СтатьяЗатратПоВозврату,
	|	ВыпускПродукции.СкладПолучатель,
	|	ВыпускПродукции.Качество,
	|	ВыпускПродукции.ЗаказПолучатель,
	|		
	|	ВыпускПродукции.СчетДт,
	|	ВыпускПродукции.СубконтоДт1,
	|	ВыпускПродукции.СубконтоДт2,
	|	ВыпускПродукции.СубконтоДт3
	|";*/
			return null;
		}
		// СформироватьТекстЗапросаПоВыпускуПродукции()
		// Процедура устанавливает параметры запроса по выпуску продукции и затратам на выпуск.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура - Реквизиты документа "Расчет НДС по продукции"
		//	Запрос - Запрос.
		//

		public void УстановитьПараметрыЗапросаПоВыпускуПродукцииИЗатратамНаВыпуск(/*
	СтруктураШапкиДокумента, 
	Запрос
	*/)
		{
			//Запрос.УстановитьПараметр("НачДата", СтруктураШапкиДокумента.НачДата);
			//Запрос.УстановитьПараметр("КонДата", СтруктураШапкиДокумента.КонДата);
			//Запрос.УстановитьПараметр("НачГраница", СтруктураШапкиДокумента.НачГраница);
			//Запрос.УстановитьПараметр("КонГраница", СтруктураШапкиДокумента.КонГраница);
			//Запрос.УстановитьПараметр("Организация", СтруктураШапкиДокумента.Организация);
			//Запрос.УстановитьПараметр("ПустаяСтатьяЗатрат", Справочники.СтатьиЗатрат.ПустаяСсылка());
			//Запрос.УстановитьПараметр("СтатусМатериальныхЗатратПринятые",  Перечисления.СтатусыМатериальныхЗатратНаПроизводство.ПринятыеВПереработку);
			//Запрос.УстановитьПараметр("ПустойКонтрагент", Справочники.Контрагенты.ПустаяСсылка());
			//Запрос.УстановитьПараметр("СтавкаНДС0", Перечисления.СтавкиНДС.НДС0);
			//Запрос.УстановитьПараметр("КодыОперацииОприходование", Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ОприходованиеНЗП);
			//Запрос.УстановитьПараметр("КодыОперацииВыпускаОприходование", Перечисления.КодыОперацийВыпускПродукции.ОприходованиеНЗП);
			//МассивКодовОперацийКорректировка = Новый Массив;
			//МассивКодовОперацийКорректировка.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.КорректировкаНЗПРасч);
			//Запрос.УстановитьПараметр("КодыОперацииКорректировка", МассивКодовОперацийКорректировка);
			//МассивКодовОперацийВозврат = Новый Массив;
			//МассивКодовОперацийВозврат.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ВозвратМатериаловИзПроизводстваРасч);
			//Запрос.УстановитьПараметр("КодыОперацииВозврат", МассивКодовОперацийВозврат);
			//МассивКодовОперацийВыпускаКорректировка = Новый Массив;
			//МассивКодовОперацийВыпускаКорректировка.Добавить(Перечисления.КодыОперацийВыпускПродукции.КорректировкаНЗПРасч);
			//Запрос.УстановитьПараметр("КодыОперацииВыпускаКорректировка", МассивКодовОперацийВыпускаКорректировка);
			//КодыОперацииВыпускаВозврат = Новый Массив;
			//КодыОперацииВыпускаВозврат.Добавить(Перечисления.КодыОперацийВыпускПродукции.ВозвратМатериаловИзПроизводстваРасч);
			//Запрос.УстановитьПараметр("КодыОперацииВыпускаВозврат", КодыОперацииВыпускаВозврат);
			//КодыОперацийФиксСтоимость = Новый Массив;
			//КодыОперацийФиксСтоимость.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.ВозвратМатериаловИзПроизводстваФикс);
			//КодыОперацийФиксСтоимость.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.КорректировкаНЗПФикс);
			//КодыОперацийФиксСтоимость.Добавить(Перечисления.КодыОперацийЗатратыНаВыпускПродукции.СписаниеНЗПФикс);
			//Запрос.УстановитьПараметр("КодыОперацийФиксСтоимость", КодыОперацийФиксСтоимость);
			//КодыОперацийВыпускаФиксСтоимость = Новый Массив;
			//КодыОперацийВыпускаФиксСтоимость.Добавить(Перечисления.КодыОперацийВыпускПродукции.ВыпускПродукцииПоФиксированнойСтоимости);
			//КодыОперацийВыпускаФиксСтоимость.Добавить(Перечисления.КодыОперацийВыпускПродукции.ВозвратМатериаловИзПроизводстваФикс);
			//КодыОперацийВыпускаФиксСтоимость.Добавить(Перечисления.КодыОперацийВыпускПродукции.КорректировкаНЗПФикс);
			//КодыОперацийВыпускаФиксСтоимость.Добавить(Перечисления.КодыОперацийВыпускПродукции.СписаниеНЗПФикс);
			//Запрос.УстановитьПараметр("КодыОперацийВыпускаФиксСтоимость", КодыОперацийВыпускаФиксСтоимость);
		}
		// УстановитьПараметрыЗапросаПоВыпускуПродукцииИЗатратамНаВыпуск()
		// Функция формирует запрос по регистру "Выпуск продукции".
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура - Реквизиты документа "Расчет НДС по продукции"
		//
		// Возвращаемое значение:
		//   Запрос – Запрос по регистру "Выпуск продукции".
		//

		public object СформироватьЗапросПоНаправлениямВыпускаПродукцииНДС(/*
	СтруктураШапкиДокумента
	*/)
		{
			//ТекстЗапроса = СформироватьТекстЗапросаПоВыпускуПродукции();
			//Запрос = Новый Запрос;
			//Запрос.Текст = ТекстЗапроса;
			/*УстановитьПараметрыЗапросаПоВыпускуПродукцииИЗатратамНаВыпуск(
		СтруктураШапкиДокумента, 
		Запрос
		);*/
			return null;
		}
		// СформироватьЗапросПоНаправлениямВыпускаПродукцииНДС()
		///////////////////////////////////////////////////////////////////////////////
		// Функция формирует текст запроса по регистру "НДС продукция".
		//
		// Возвращаемое значение:
		//   Текст – текст запроса по регистру "НДС продукция".
		//

		public object СформироватьТекстЗапросаПоНДСПродукция(/**/)
		{
			/*ТекстЗапроса = "
	|ВЫБРАТЬ
	|	НДСПродукция.Подразделение,
	|	НДСПродукция.НоменклатурнаяГруппа,
	|	НДСПродукция.Продукция,
	|	НДСПродукция.ХарактеристикаПродукции,
	|	НДСПродукция.СерияПродукции,
	|	НДСПродукция.Спецификация,
	|	НДСПродукция.Заказ,
	|	НДСПродукция.СчетУчета,
	|
	|	НДСПродукция.ВидЦенности,
	|	НДСПродукция.СчетФактура,
	|	НДСПродукция.СтавкаНДС,
	|	НДСПродукция.СчетУчетаНДС,
	|	НДСПродукция.НДСВключенВСтоимость,
	|
	|	ЕСТЬNULL(НДСПредъявленный.Поставщик,&ПустойКонтрагент) КАК Поставщик,
	|
	|	НДСПродукция.СтоимостьОборот КАК СуммаЗатрат,
	|	НДСПродукция.НДСОборот КАК СуммаЗатратНДС
	|ИЗ
	|	РегистрНакопления.НДСПродукция.Обороты(&НачГраница, &КонГраница, ,
	|		Подразделение.Владелец = &Организация
	|		И Продукция В (
	|			ВЫБРАТЬ РАЗЛИЧНЫЕ
	|				Распределение.Продукция
	|			ИЗ			
	|				РегистрСведений.РаспределениеПродукцииПоПеределамОрганизаций КАК Распределение
	|			ГДЕ
	|				Распределение.Период МЕЖДУ &НачДата И &КонДата
	|				И Распределение.НомерПередела = &НомерПередела
	|				И Распределение.Организация = &Организация
	|			)
	|	) КАК НДСПродукция
	|	
	|	ЛЕВОЕ СОЕДИНЕНИЕ (
	|		ВЫБРАТЬ РАЗЛИЧНЫЕ
	|			НДСПредъявленный.Поставщик,
	|			НДСПредъявленный.СчетФактура
	|		ИЗ
	|			РегистрНакопления.НДСПредъявленный.Обороты( , , ,
	|				Организация = &Организация
	|		    	И СчетФактура В (&МассивСчетовФактур)
	|				И Поставщик <> &ПустойКонтрагент
	|			) КАК НДСПредъявленный
	|
	|		) КАК НДСПредъявленный 
	|	ПО
	|		НДСПредъявленный.СчетФактура = НДСПродукция.СчетФактура
	|
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ (
	|		ВЫБРАТЬ
	|			Распределение.Подразделение,
	|			Распределение.Продукция,
	|			Распределение.ХарактеристикаПродукции,
	|			Распределение.СерияПродукции
	|		ИЗ			
	|			РегистрСведений.РаспределениеПродукцииПоПеределамОрганизаций КАК Распределение
	|		ГДЕ
	|			Распределение.Период МЕЖДУ &НачДата И &КонДата
	|			И Распределение.НомерПередела = &НомерПередела
	|			И Не Распределение.КорректировкаНЗП
	|			И Не Распределение.ОприходованиеНЗП
	|			И Не Распределение.ВозвратИзНЗП
	|			И Распределение.Организация = &Организация
	|		) КАК Распределение
	|	ПО 
	|		НДСПродукция.Подразделение = Распределение.Подразделение
	|		И НДСПродукция.Продукция = Распределение.Продукция
	|		И НДСПродукция.ХарактеристикаПродукции = Распределение.ХарактеристикаПродукции
	|		И НДСПродукция.СерияПродукции = Распределение.СерияПродукции
	|	
	|УПОРЯДОЧИТЬ ПО
	|	НДСПродукция.Подразделение,
	|	НДСПродукция.НоменклатурнаяГруппа,
	|	НДСПродукция.Продукция,
	|	НДСПродукция.ХарактеристикаПродукции,
	|	НДСПродукция.СерияПродукции,
	|	НДСПродукция.Спецификация,
	|	НДСПродукция.Заказ,
	|	НДСПродукция.СчетУчета,
	|
	|	НДСПродукция.ВидЦенности,
	|	НДСПродукция.СчетФактура,
	|	НДСПродукция.СтавкаНДС,
	|	НДСПродукция.СчетУчетаНДС,
	|	НДСПродукция.НДСВключенВСтоимость
	|";*/
			return null;
		}
		// СформироватьТекстЗапросаПоНДСПродукция()
		// Функция формирует запрос по регистру "НДС продукция".
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура - Реквизиты документа "Расчет НДС по продукции"
		//
		// Возвращаемое значение:
		//   Запрос – Запрос по регистру "НДС продукция".
		//

		public object СформироватьЗапросПоНДСПродукция(/*
	СтруктураШапкиДокумента
	*/)
		{
			//ТекстЗапроса = СформироватьТекстЗапросаПоНДСПродукция();
			//Запрос = Новый Запрос;
			//Запрос.Текст = ТекстЗапроса;
			/*УстановитьПараметрыЗапросаПоВыпускуПродукцииИЗатратамНаВыпуск(
		СтруктураШапкиДокумента, 
		Запрос
		);*/
			return null;
		}
		// СформироватьЗапросПоНДСПродукция()
		///////////////////////////////////////////////////////////////////////////////
		// Функция получает структуру поиска строк результата запроса по затратам на выпуск.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//	СтрокаВыборки - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса по незавершенному производству
		//
		// Возвращаемое значение:
		//	Структура - Структура поиска
		//

		public object ПолучитьСтруктуруПоискаСтрокЗатратНаВыпуск(/*
	СтруктураШапкиДокумента,
	СтрокаВыборки
	*/)
		{
			//СтруктураПоиска = Новый Структура;
			//СтруктураПоиска.Вставить("ПодразделениеСписанияНЗП", СтрокаВыборки.Подразделение);
			//СтруктураПоиска.Вставить("НоменклатурнаяГруппаНЗП", СтрокаВыборки.НоменклатурнаяГруппа);
			//СтруктураПоиска.Вставить("ЗаказНЗП", СтрокаВыборки.Заказ);
			//СтруктураПоиска.Вставить("СтатьяЗатрат", СтрокаВыборки.СтатьяЗатрат);
			//СтруктураПоиска.Вставить("Затрата", СтрокаВыборки.Затрата);
			if(true/*СтруктураШапкиДокумента.ПартионныйУчетНДСвРазрезеСерийИХарактеристик*/)
			{
				//СтруктураПоиска.Вставить("ХарактеристикаЗатраты", СтрокаВыборки.ХарактеристикаЗатраты);
			}
			if(true/*СтруктураШапкиДокумента.ПартионныйУчетНДСвРазрезеСерийИХарактеристик
	   И СтрокаВыборки.ВестиУчетПоСериямВНЗП*/)
			{
				//СтруктураПоиска.Вставить("СерияЗатраты", СтрокаВыборки.СерияЗатраты);
			}
			//СтруктураПоиска.Вставить("СчетУчета", СтрокаВыборки.СчетУчета);
			return null;
		}
		// ПолучитьСтруктуруПоискаСтрокЗатратНаВыпуск()
		// Функция получает структуру поиска строк результата запроса по незавершенному производству.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//	СтрокаВыборки - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса по незавершенному производству
		//
		// Возвращаемое значение:
		//	Структура - Структура поиска
		//

		public object ПолучитьСтруктуруПоискаСтрокНезавершенногоПроизводства(/*
	СтруктураШапкиДокумента,
	СтрокаВыборки
	*/)
		{
			//СтруктураПоиска = Новый Структура;
			//СтруктураПоиска.Вставить("Подразделение", СтрокаВыборки.Подразделение);
			//СтруктураПоиска.Вставить("НоменклатурнаяГруппа", СтрокаВыборки.НоменклатурнаяГруппа);
			//СтруктураПоиска.Вставить("Заказ", СтрокаВыборки.Заказ);
			//СтруктураПоиска.Вставить("СтатьяЗатрат", СтрокаВыборки.СтатьяЗатрат);
			//СтруктураПоиска.Вставить("Затрата", СтрокаВыборки.Затрата);
			if(true/*СтруктураШапкиДокумента.ПартионныйУчетНДСвРазрезеСерийИХарактеристик*/)
			{
				//СтруктураПоиска.Вставить("ХарактеристикаЗатраты", СтрокаВыборки.ХарактеристикаЗатраты);
			}
			if(true/*СтруктураШапкиДокумента.ПартионныйУчетНДСвРазрезеСерийИХарактеристик
	   И СтрокаВыборки.ВестиУчетПоСериямВНЗП*/)
			{
				//СтруктураПоиска.Вставить("СерияЗатраты", СтрокаВыборки.СерияЗатраты);
			}
			//СтруктураПоиска.Вставить("СчетУчета", СтрокаВыборки.СчетУчета);
			return null;
		}
		// ПолучитьСтруктуруПоискаСтрокНезавершенногоПроизводства()
		// Процедура рассчитывает суммы списания нематериальных затрат.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//	СтрокаВыборки - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса
		//	СуммаНЗП - Число - Сумма остаток незавершенного производства
		//	НДС - Число - Сумма остаток незавершенного производства (НДС)
		//	СуммаЗатратНаВыпускВсего - Число - Общая сумма затрат на выпуск
		//	СуммаЗатратНаВыпуск - Число - Сумма затрат на выпуск продукции, отраженная в документах распределения
		//
		// Выходные параметры
		//	СуммаЗатрат - Число - Сумма для отражения в затратах на выпуск
		//	СуммаЗатратНДС - Число - Сумма для отражения в затратах на выпуск (НДС)
		//	СписатьСуммаИзНЗП - Число - Сумма списания из незавершенного производства
		//	СписатьНДСИзНЗП - Число - Сумма списания из незавершенного производства (НДС)
		//

		public void РассчитатьСуммыСписанияНематериальныхЗатрат(/*
	СтруктураШапкиДокумента,
	СтрокаВыборки,
	СуммаНЗП,
	НДС,
	СуммаЗатратНаВыпускВсего,
	СуммаЗатратНаВыпуск,
	СуммаЗатрат,
	СуммаЗатратНДС,
	СписатьСуммаИзНЗП,
	СписатьНДСизНЗП
	*/)
		{
			//СуммаЗатрат = ?(СуммаЗатратНаВыпускВсего <> 0, Окр(СуммаНЗП * СуммаЗатратНаВыпуск / СуммаЗатратНаВыпускВсего, 2, 1), 0);
			//СуммаЗатратНДС = ?(СуммаЗатратНаВыпускВсего <> 0, Окр(НДС * СуммаЗатратНаВыпуск / СуммаЗатратНаВыпускВсего, 2, 1), 0);
			if(true/*(СуммаЗатрат - СуммаЗатратНДС) >= СуммаЗатратНаВыпуск*/)
			{
				//СуммаЗатратНДС = ?(СуммаЗатрат <> 0, Окр(СуммаЗатратНаВыпуск * (СуммаЗатратНДС / (СуммаЗатрат - СуммаЗатратНДС)), 2, 1), 0);
				//СуммаЗатрат = СуммаЗатратНаВыпуск + СуммаЗатратНДС;
			}
			//СписатьСуммаИзНЗП = СуммаЗатрат;
			//СписатьНДСизНЗП = СуммаЗатратНДС;
			//СуммаЗатратНаВыпускВсего = СуммаЗатратНаВыпускВсего - СуммаЗатратНаВыпуск;
			//СуммаНЗП = СуммаНЗП - СуммаЗатрат;
			//НДС = НДС - СуммаЗатратНДС;
		}
		// РассчитатьСуммыСписанияНематериальныхЗатрат()
		// Функция получения массива затрат, рассчитываемых на текущем переделе.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура - Реквизиты документа "Расчет НДС по продукции"
		//	НомерПередела - Число - Текущий номер передела
		//
		// Возвращаемое значение:
		//	Массив - Массив затрат
		//

		public object ПолучитьМассивЗатрат(/*
	СтруктураШапкиДокумента,
	НомерПередела
	*/)
		{
			/*ТекстЗапроса = "
	|ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	РаспределениеЗатрат.Затрата
	|ИЗ			
	|	РегистрСведений.РаспределениеЗатратПоПеределамОрганизаций КАК РаспределениеЗатрат
	|ГДЕ
	|	РаспределениеЗатрат.Период МЕЖДУ &НачДата И &КонДата
	|	И РаспределениеЗатрат.НомерПередела = &НомерПередела
	|	И РаспределениеЗатрат.Организация = &Организация
	|";*/
			//Запрос = Новый Запрос;
			//Запрос.Текст = ТекстЗапроса;
			//Запрос.УстановитьПараметр("НачДата", СтруктураШапкиДокумента.НачДата);
			//Запрос.УстановитьПараметр("КонДата", СтруктураШапкиДокумента.КонДата);
			//Запрос.УстановитьПараметр("Организация", СтруктураШапкиДокумента.Организация);
			//Запрос.УстановитьПараметр("НомерПередела", НомерПередела);
			//ТаблицаЗатрат = Запрос.Выполнить().Выгрузить();
			//МассивЗатрат = ТаблицаЗатрат.ВыгрузитьКолонку("Затрата");
			//МассивЗатрат.Добавить(Справочники.Номенклатура.ПустаяСсылка());
			return null;
		}
		// ПолучитьМассивЗатрат()
		// Процедура рассчитывает суммы списания материальных затрат.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//	РезультатЗапросаПоНезавершенномуПроизводству - РезультатЗапроса - Результат выполнения запроса по незавершенному производству
		//	РезультатЗапросаПоСчетамФактурам - РезультатЗапроса - Результат выполнения запроса по незавершенному производству по счетам-фактурам
		//  РезультатЗапросаПоЗатратамНаВыпуск - РезультатЗапроса - Результат запроса по затратам на выпуск
		//	НомерПередела - Число - Текущий номер передела, для которого производится расчет себестоимости
		//	НаборЗаписейНДСНезавершенноеПроизводство - РегистрНакопленияНаборЗаписей - Набор записей регистра накопления "НДС по незавершенному производству"
		//	НаборЗаписейНДСПродукция - РегистрНакопленияНаборЗаписей - Набор записей регистра накопления "НДС продукция"
		//
		// Процедура рассчитывает суммы списания материальных затрат.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//	КоличествоНЗП - Число - Количество остаток незавершенного производства
		//	СуммаНЗП - Число - Сумма остаток незавершенного производства
		//	НДС - Число - Сумма остаток незавершенного производства (НДС)
		//	КоличествоЗатратыНаВыпуск - Число - Количество затраты на выпуск продукции
		//
		// Выходные параметры
		//	СуммаЗатрат - Число - Сумма для отражения в затратах на выпуск
		//	СуммаЗатратНДС - Число - Сумма для отражения в затратах на выпуск (НДС)
		//	СписатьКоличествоИзНЗП - Число - Количество списания из незавершенного производства
		//	СписатьСуммаИзНЗП - Число - Сумма списания из незавершенного производства
		//	СписатьНДСИзНЗП - Число - Сумма списания из незавершенного производства (НДС)
		//

		public void РассчитатьСуммыСписанияМатериальныхЗатрат(/*
	СтруктураШапкиДокумента,
	КоличествоНЗП,
	СуммаНЗП,
	НДС,
	КоличествоЗатратыНаВыпуск,
	СуммаЗатрат,
	СуммаЗатратНДС,
	СписатьКоличествоИзНЗП,
	СписатьСуммаИзНЗП,
	СписатьНДСизНЗП
	*/)
		{
			//СписаноКол = КоличествоЗатратыНаВыпуск;
			//Знак = ?(СписаноКол < 0, - 1, 1);
			//СуммаЗатрат = 0;
			//СписатьКоличествоИзНЗП = 0;
			//СписатьСуммаИзНЗП = 0;
			if(true/*СписаноКол = 0*/)
			{
			}
			if(true/*Знак * КоличествоНЗП <= Знак * СписаноКол*/)
			{
				if(true/*КоличествоНЗП = 0*/)
				{
				}
				//СписаноКол = КоличествоНЗП;
				//СуммаЗатрат = СуммаНЗП;
				//СуммаЗатратНДС = НДС;
				//СписатьКоличествоИзНЗП = КоличествоНЗП;
				//СписатьСуммаИзНЗП = СуммаЗатрат;
				//СписатьНДСизНЗП = СуммаЗатратНДС;
			}
			//СуммаНЗП = СуммаНЗП - СписатьСуммаИзНЗП;
			//НДС = НДС - СписатьНДСизНЗП;
			//КоличествоНЗП = КоличествоНЗП - СписатьКоличествоИзНЗП;
		}
		// РассчитатьСуммыСписанияМатериальныхЗатрат()
		// Процедура распределения затрат из незавершенного производства за выпуск продукции.
		//

		public void РаспределитьЗатратыИзНезавершенногоПроизводстваНаВыпускПродукции(/*
	СтруктураШапкиДокумента,
	РезультатЗапросаПоНезавершенномуПроизводству,
	РезультатЗапросаПоСчетамФактурам,
	РезультатЗапросаПоЗатратамНаВыпуск,
	НомерПередела,
	НаборЗаписейНДСНезавершенноеПроизводство,
	НаборЗаписейНДСПродукция
	*/)
		{
			/*//Подготовка индексов таблиц значений
*/
			/*СтрокаИндексовЗатратНаВыпуск = "ПодразделениеСписанияНЗП,
		|НоменклатурнаяГруппаНЗП,
		|ЗаказНЗП,СтатьяЗатрат,
		|Затрата,
		|СчетУчета";*/
			/*СтрокаИндексовНезавершенногоПроизводства = "Подразделение,
		|НоменклатурнаяГруппа,
		|Заказ,
		|СтатьяЗатрат,
		|Затрата,
		|СчетУчета";*/
			//СтрокаИндексовНезавершенногоПроизводстваБезСерии = "";
			//СтрокаИндексовЗатратНаВыпускБезСерии = "";
			if(true/*СтруктураШапкиДокумента.ПартионныйУчетНДСвРазрезеСерийИХарактеристик*/)
			{
				//СтрокаИндексовЗатратНаВыпускБезСерии = СтрокаИндексовЗатратНаВыпуск + ", ХарактеристикаЗатраты";
				/*СтрокаИндексовЗатратНаВыпуск = СтрокаИндексовЗатратНаВыпуск + ", 
			|ХарактеристикаЗатраты, 
			|СерияЗатраты";*/
				//СтрокаИндексовНезавершенногоПроизводстваБезСерии = СтрокаИндексовНезавершенногоПроизводства + ", ХарактеристикаЗатраты";
				/*СтрокаИндексовНезавершенногоПроизводства = СтрокаИндексовНезавершенногоПроизводства + ", 
			|ХарактеристикаЗатраты, 
			|СерияЗатраты";*/
			}
			//ТаблицаПоСчетамФактурам = РезультатЗапросаПоСчетамФактурам.Выгрузить();
			//ТаблицаПоСчетамФактурам.Индексы.Добавить(СтрокаИндексовНезавершенногоПроизводства);
			if(true/*СтрокаИндексовНезавершенногоПроизводстваБезСерии <> ""*/)
			{
				//ТаблицаПоСчетамФактурам.Индексы.Добавить(СтрокаИндексовНезавершенногоПроизводстваБезСерии);
			}
			//ТаблицаПоЗатратамНаВыпуск = РезультатЗапросаПоЗатратамНаВыпуск.Выгрузить();
			//ТаблицаПоЗатратамНаВыпуск.Индексы.Добавить(СтрокаИндексовЗатратНаВыпуск);
			if(true/*СтрокаИндексовЗатратНаВыпускБезСерии <> ""*/)
			{
				//ТаблицаПоЗатратамНаВыпуск.Индексы.Добавить(СтрокаИндексовЗатратНаВыпускБезСерии);
			}
			/*// Создадим таблицу количества и стоимости затрат на выпуск.
*/
			//ТаблицаУчтеныЗатратыНаВыпуск = Новый ТаблицаЗначений;
			//Колонки = ТаблицаУчтеныЗатратыНаВыпуск.Колонки;
			//Колонки.Добавить("Количество", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15, 3)));
			//Колонки.Добавить("Сумма", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15, 2)));
			//ВыборкаПоЗатратам = РезультатЗапросаПоНезавершенномуПроизводству.Выбрать();
			while(true/*ВыборкаПоЗатратам.Следующий()*/)
			{
				/*СтруктураПоискаЗатратыНаВыпуск = ПолучитьСтруктуруПоискаСтрокЗатратНаВыпуск(
			СтруктураШапкиДокумента,
			ВыборкаПоЗатратам
		);*/
				/*// Выберем строки НДС по незавершенному производству со счетами-фактурами.
*/
				/*СтруктураПоискаНЗП = ПолучитьСтруктуруПоискаСтрокНезавершенногоПроизводства(
			СтруктураШапкиДокумента,
			ВыборкаПоЗатратам
		);*/
				//ТаблицаУчтеныЗатратыНаВыпуск.Очистить();
				//МассивСтрокПоСчетамФактурам = ТаблицаПоСчетамФактурам.НайтиСтроки(СтруктураПоискаНЗП);
				if(true/*МассивСтрокПоСчетамФактурам.Количество()>0*/)
				{
					//МассивСтрокПоЗатратамНаВыпуск = ТаблицаПоЗатратамНаВыпуск.НайтиСтроки(СтруктураПоискаЗатратыНаВыпуск);
				}
				/*// ВыборкаПоСчетамФактурам
*/
			}
			//;;
		}
		// РаспределитьЗатратыИзНезавершенногоПроизводстваНаВыпускПродукции()
		// Процедура списания затрат из незавершенного производства на выпуск продукции.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//	ЗапросПоНезавершенномуПроизводству - Запрос - Запрос по незавершенному производству
		//	ЗапросПоНезавершенномуПроизводствуПоСчетамФактурам - Запрос - Запрос по незавершенному производству
		//  ЗапросПоЗатратамНаВыпуск - Запрос - Запрос по затратам на выпуск
		//	НомерПередела - Число - Текущий номер передела, для которого производится расчет себестоимости
		//  СтруктураДвижений - Структура - Наборы движений по регистрам
		//

		public void СписаниеЗатратИзНезавершенногоПроизводстваНаВыпускПродукции(/*
	СтруктураШапкиДокумента,
	ЗапросПоНезавершенномуПроизводству,
	ЗапросПоНезавершенномуПроизводствуПоСчетамФактурам,
	ЗапросПоЗатратамНаВыпуск,
	НомерПередела,
	СтруктураНаборыЗаписей
	*/)
		{
			/*МассивЗатрат = ПолучитьМассивЗатрат(
		СтруктураШапкиДокумента,
		НомерПередела
		);*/
			//ЗапросПоНезавершенномуПроизводству.УстановитьПараметр("НомерПередела", НомерПередела);
			//ЗапросПоНезавершенномуПроизводству.УстановитьПараметр("МассивЗатрат",  МассивЗатрат);
			//РезультатЗапросаПоНезавершенномуПроизводству = ЗапросПоНезавершенномуПроизводству.Выполнить();
			//ЗапросПоНезавершенномуПроизводствуПоСчетамФактурам.УстановитьПараметр("НомерПередела", НомерПередела);
			//ЗапросПоНезавершенномуПроизводствуПоСчетамФактурам.УстановитьПараметр("МассивЗатрат",  МассивЗатрат);
			//РезультатЗапросаПоНезавершенномуПроизводствуПоСчетамФактурам = ЗапросПоНезавершенномуПроизводствуПоСчетамФактурам.Выполнить();
			//ЗапросПоЗатратамНаВыпуск.УстановитьПараметр("НомерПередела", НомерПередела);
			//ЗапросПоЗатратамНаВыпуск.УстановитьПараметр("МассивЗатрат",  МассивЗатрат);
			//РезультатЗапросаПоЗатратамНаВыпуск = ЗапросПоЗатратамНаВыпуск.Выполнить();
			if(true/*Не РезультатЗапросаПоНезавершенномуПроизводству.Пустой()
	   И Не РезультатЗапросаПоЗатратамНаВыпуск.Пустой()*/)
			{
				/*РаспределитьЗатратыИзНезавершенногоПроизводстваНаВыпускПродукции(
			СтруктураШапкиДокумента,
			РезультатЗапросаПоНезавершенномуПроизводству,
			РезультатЗапросаПоНезавершенномуПроизводствуПоСчетамФактурам,
			РезультатЗапросаПоЗатратамНаВыпуск,
			НомерПередела,
			СтруктураНаборыЗаписей.НДСНезавершенноеПроизводство,
			СтруктураНаборыЗаписей.НДСПродукция
		);*/
			}
			if(true/*СтруктураНаборыЗаписей.НДСНезавершенноеПроизводство.Модифицированность()*/)
			{
				//СтруктураНаборыЗаписей.НДСНезавершенноеПроизводство.Записать(Ложь);
			}
			if(true/*СтруктураНаборыЗаписей.НДСПродукция.Модифицированность()*/)
			{
				//СтруктураНаборыЗаписей.НДСПродукция.Записать(Ложь);
			}
		}
		// СписаниеЗатратИзНезавершенногоПроизводстваНаВыпускПродукции()
		///////////////////////////////////////////////////////////////////////////////
		// ПРОЦЕДУРЫ ФОРМИРОВАНИЯ ДВИЖЕНИЙ ПО РЕГИСТРАМ
		// Процедура формирует движения по направлениям выпуска
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции".
		//	СтрокаВыборки - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса
		//	СтрокаВыборкиНДСПродукция - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса по НДС продукция
		//  СуммаЗатрат - Число - Полная сумма затрат на выпуск продукции
		//  СуммаЗатратНДС - Число - Полная сумма затрат на выпуск продукции (НДС)
		//  СтруктураДвижений - Структура - Наборы движений по регистрам
		//
		// Процедура формирует движение по регистру бухгалтерии "Хозрасчетный".
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//	СтрокаВыборки - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса
		//	СтрокаВыборкиНДСПродукция - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса по НДС продукция
		//  НДС - Число - Сумма НДС
		//	НаборЗаписейХозрасчетный - РегистрБухгалтерииНаборЗаписей - Набор записей регистра бухгалтерии "Хозрасчетный".
		//

		public void СформироватьДвиженияПоРегиструБухгалтерииРеализация0(/*
	СтруктураШапкиДокумента,
	СтрокаВыборки,
	СтрокаВыборкиНДСПродукция,
	НДС,
	НаборЗаписейХозрасчетный
	*/)
		{
			if(true/*НДС = 0*/)
			{
			}
			if(true/*СтрокаВыборкиНДСПродукция.СчетУчетаНДС.Пустая()*/)
			{
			}
			//НоваяПроводка = НаборЗаписейХозрасчетный.Добавить();
			//НоваяПроводка.Период       = СтруктураШапкиДокумента.Дата;
			//НоваяПроводка.Организация  = СтруктураШапкиДокумента.Организация;
			//НоваяПроводка.НомерЖурнала = "НДС";
			//НоваяПроводка.Содержание = "В связи с применением НДС 0% по реализации";
			//НоваяПроводка.Сумма        = НДС;
			//НоваяПроводка.СчетДт = ПланыСчетов.Хозрасчетный.НДСПоТоварамРеализованнымПоСтавке0;
			//БухгалтерскийУчет.УстановитьСубконто(НоваяПроводка.СчетДт, НоваяПроводка.СубконтоДт, "Контрагенты", СтрокаВыборкиНДСПродукция.Поставщик);
			//БухгалтерскийУчет.УстановитьСубконто(НоваяПроводка.СчетДт, НоваяПроводка.СубконтоДт, "СФПолученные", СтрокаВыборкиНДСПродукция.СчетФактура);
			//БухгалтерскийУчет.УстановитьСубконто(НоваяПроводка.СчетДт, НоваяПроводка.СубконтоДт, "ДокументыРеализации", СтрокаВыборки.ДокументВыпуска);
			//НоваяПроводка.СчетКт = СтрокаВыборкиНДСПродукция.СчетУчетаНДС;
			/*// 19.хх
*/
			//БухгалтерскийУчет.УстановитьСубконто(НоваяПроводка.СчетКт, НоваяПроводка.СубконтоКт, "Контрагенты", СтрокаВыборкиНДСПродукция.Поставщик);
			//БухгалтерскийУчет.УстановитьСубконто(НоваяПроводка.СчетКт, НоваяПроводка.СубконтоКт, "СФПолученные", СтрокаВыборкиНДСПродукция.СчетФактура);
			/*// Если в наборе записей 1000 строк, запишем набор.
*/
			if(true/*НаборЗаписейХозрасчетный.Количество() = 1000*/)
			{
				//НаборЗаписейХозрасчетный.Записать(Ложь);
			}
		}
		// СформироватьДвиженияПоРегиструБухгалтерииРеализация0()
		// Процедура формирует движение по распределению затрат по регистру "НДС продукция".
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//  СтрокаВыборки - ВыборкаИзРезультатаЗапроса - Текущая строка выборки из результата запроса по незавершенному производству
		//  СтрокаВыборкиЗатратыНаВыпуск - ВыборкаИзРезультатаЗапроса - Текущая строка выборки из результата запроса по затратам на выпуск
		//  Сумма - Число - Сумма затрат
		//  НДС - Число - Сумма НДС
		//	НаборЗаписейНДСПродукция - ТаблицаЗначений - Таблица движений регистра накопления "НДС продукция".
		//

		public void СформироватьДвиженияПоРегиструНДСПродукция(/*
	СтруктураШапкиДокумента,
	СтрокаВыборки,
	СтрокаВыборкиЗатратыНаВыпуск,
	Сумма,
	НДС,
	НаборЗаписейНДСПродукция
	*/)
		{
			if(true/*Сумма = 0
	   И НДС = 0*/)
			{
			}
			/*// В движениях по регистру "НДС продукция" должны быть заполнены измерения:
*/
			/*//	- Продукция,
*/
			/*//	- ХарактеристикаПродукции,
*/
			/*//	- СерияПродукции,
*/
			/*//	- Подразделение,
*/
			/*//	- СчетУчета,
*/
			/*//	- НоменклатурнаяГруппа,
*/
			/*//	- Спецификация,
*/
			/*//	- Заказ,
*/
			/*//
*/
			/*//	- ВидЦенности,
*/
			/*//	- СчетФактура,
*/
			/*//	- СтавкаНДС,
*/
			/*//	- СчетУчетаНДС,
*/
			/*//	- НДСВключенВСтоимость.
*/
			/*//
*/
			/*// Должны быть заполнены ресурсы;
*/
			/*//	- Стоимость,
*/
			/*//	- НДС.
*/
			//НоваяСтрока = НаборЗаписейНДСПродукция.Добавить();
			//НоваяСтрока.Период = СтруктураШапкиДокумента.Период;
			//НоваяСтрока.Активность = Истина;
			//ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаВыборкиЗатратыНаВыпуск);
			//НоваяСтрока.ВидЦенности = СтрокаВыборки.ВидЦенности;
			//НоваяСтрока.СчетФактура = СтрокаВыборки.СчетФактура;
			//НоваяСтрока.СтавкаНДС = СтрокаВыборки.СтавкаНДС;
			//НоваяСтрока.СчетУчетаНДС = СтрокаВыборки.СчетУчетаНДС;
			//НоваяСтрока.НДСВключенВСтоимость = СтрокаВыборки.НДСВключенВСтоимость;
			//НоваяСтрока.Стоимость = Сумма;
			//НоваяСтрока.НДС = НДС;
			/*// Если в наборе записей 1000 строк, запишем набор.
*/
			if(true/*НаборЗаписейНДСПродукция.Количество() = 1000*/)
			{
				//НаборЗаписейНДСПродукция.Записать(Ложь);
			}
		}
		// СформироватьДвиженияПоРегиструНДСПродукция()
		// Процедура формирует движение по распределению затрат по регистру "НДС по незавершенному производству".
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//  СтрокаВыборки - ВыборкаИзРезультатаЗапроса - Текущая строка выборки из результата запроса по незавершенному производству
		//	Количество - Число - Количество затрат
		//  Сумма - Число - Сумма затрат
		//  НДС - Число - Сумма НДС
		//	НаборЗаписейНДСНезавершенноеПроизводство - РегистрНакопленияНаборЗаписей - Набор записей регистра накопления "НДС по незавершенному производству".
		//

		public void СформироватьДвиженияПоРегиструНДСНезавершенноеПроизводство(/*
	СтруктураШапкиДокумента,
	СтрокаВыборки,
	Количество,
	Сумма,
	НДС,
	НаборЗаписейНДСНезавершенноеПроизводство
	*/)
		{
			if(true/*Количество = 0
	   И Сумма = 0
	   И НДС = 0*/)
			{
			}
			/*// В движениях по регистру "НДС по незавершенному производству" должны быть заполнены измерения:
*/
			/*//	- Подразделение,
*/
			/*//	- СчетУчета,
*/
			/*//	- СтатьяЗатрат,
*/
			/*//	- НоменклатурнаяГруппа,
*/
			/*//	- Заказ,
*/
			/*//	- Затрата - заполняется номенклатура
*/
			/*//	- ХарактеристикаЗатраты - заполняется характеристика номенклатуры
*/
			/*//	- СерияЗатраты - заполняется серия номенклатуры,
*/
			/*//
*/
			/*//	- ВидЦенности,
*/
			/*//	- СчетФактура,
*/
			/*//	- СтавкаНДС,
*/
			/*//	- СчетУчетаНДС,
*/
			/*//	- НДСВключенВСтоимость.
*/
			/*//
*/
			/*// Должны быть заполнены ресурсы;
*/
			/*//	- Количество,
*/
			/*//	- Стоимость,
*/
			/*//	- НДС.
*/
			//НоваяСтрока = НаборЗаписейНДСНезавершенноеПроизводство.Добавить();
			//НоваяСтрока.Активность = Истина;
			//НоваяСтрока.ВидДвижения = ВидДвиженияНакопления.Расход;
			//НоваяСтрока.Период = СтруктураШапкиДокумента.Период;
			//ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаВыборки);
			//НоваяСтрока.КодОперации = Перечисления.КодыОперацийНезавершенноеПроизводство.СписаниеНЗПРегламент;
			//НоваяСтрока.Стоимость = Сумма;
			//НоваяСтрока.НДС = НДС;
			//НоваяСтрока.Количество  = Количество;
			/*// Если в наборе записей 1000 строк, запишем набор.
*/
			if(true/*НаборЗаписейНДСНезавершенноеПроизводство.Количество() = 1000*/)
			{
				//НаборЗаписейНДСНезавершенноеПроизводство.Записать(Ложь);
			}
		}
		// СформироватьДвиженияПоРегиструНДСНезавершенноеПроизводство()
		// Процедура формирует движение по регистру "НДС по партиям запасов".
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//	СтрокаВыборки - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса
		//	СтрокаВыборкиНДСПродукция - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса по НДС продукция
		//  Сумма - Число - Сумма затрат
		//  СуммаНДС - Число - Сумма затрат (НДС)
		//	НаборЗаписейНДСПартииТоваров - РегистрНакопленияНаборЗаписей - Набор записей регистра накопления "НДС по партиям запасов".
		//

		public void СформироватьДвиженияПоРегиструНДСПартииТоваров(/*
	СтруктураШапкиДокумента,
	СтрокаВыборки,
	СтрокаВыборкиНДСПродукция,
	Сумма,
	СуммаНДС,
	НаборЗаписейНДСПартииТоваров
	*/)
		{
			if(true/*Сумма = 0
	   И СуммаНДС = 0*/)
			{
			}
			/*// В движениях по регистру "НДС по партиям запасов" должны быть заполнены измерения:
*/
			/*//	- Организация,
*/
			/*//	- СчетУчета,
*/
			/*//	- Номенклатура,
*/
			/*//	- ХарактеристикаНоменклатуры,
*/
			/*//	- СерияНоменклатуры - заполняется, если ведется партионный учет по сериям,
*/
			/*//	- Партия,
*/
			/*//	- Заказ - заполняется, если в заказе покупателя указан договор с установленным флажком "Вести учет товаров по заказам покупателей"
*/
			/*//		или если указан заказ покупателя: переработка,
*/
			/*//	- Склад - заполняется, если ведется суммовой учет по складам
*/
			/*//		склад не заполняется для продукции, выпущенной из давальческого сырья (при указании заказа покупателя: переработка),
*/
			/*//
*/
			/*//	- СтавкаНДС,
*/
			/*//	- СчетФактура,
*/
			/*//	- НДСВключенВСтоимость,
*/
			/*//	- ВидЦенности,
*/
			/*//	- СчетУчетаНДС.
*/
			/*//
*/
			/*// В движениях должны быть заполнены ресурсы:
*/
			/*//	- Стоимость,
*/
			/*//	- НДС.
*/
			//НоваяСтрока = НаборЗаписейНДСПартииТоваров.Добавить();
			//НоваяСтрока.Активность = Истина;
			//НоваяСтрока.ВидДвижения = ВидДвиженияНакопления.Приход;
			//НоваяСтрока.Период = СтрокаВыборки.ДокументВыпускаДата;
			//НоваяСтрока.Организация = СтруктураШапкиДокумента.Организация;
			//НоваяСтрока.СчетУчета = СтрокаВыборки.СчетДт;
			//НоваяСтрока.Номенклатура = СтрокаВыборки.Продукция;
			if(true/*глЗначениеПеременной("ПараметрыПартионногоУчета").ВестиПартионныйУчетПоСкладамРегл
		И УправлениеЗапасамиПартионныйУчет.ВедетсяСуммовойУчетПоСкладам(СтрокаВыборки.СчетДт)
	   	И Не СтрокаВыборки.ВидОперации = Перечисления.ВидыОперацийЗаказПокупателя.Переработка*/)
			{
				//НоваяСтрока.Склад = СтрокаВыборки.СкладПолучатель;
			}
			//НоваяСтрока.ХарактеристикаНоменклатуры = СтрокаВыборки.ХарактеристикаПродукции;
			if(true/*СтруктураШапкиДокумента.ПартионныйУчетНДСвРазрезеСерийИХарактеристик
	   И СтрокаВыборки.ВестиПартионныйУчетПоСериям*/)
			{
				//НоваяСтрока.СерияНоменклатуры = СтрокаВыборки.СерияПродукции;
			}
			//НоваяСтрока.Партия = СтрокаВыборки.ДокументВыпуска;
			if(true/*СтрокаВыборки.ВидОперации = Перечисления.ВидыОперацийЗаказПокупателя.Переработка
	 ИЛИ СтрокаВыборки.ОбособленныйУчетТоваровПоЗаказамПокупателей*/)
			{
				//НоваяСтрока.Заказ = СтрокаВыборки.ЗаказПолучатель;
			}
			/*// Данные для учета НДС.
*/
			//НоваяСтрока.СтавкаНДС = СтрокаВыборкиНДСПродукция.СтавкаНДС;
			//НоваяСтрока.СчетФактура = СтрокаВыборкиНДСПродукция.СчетФактура;
			//НоваяСтрока.НДСВключенВСтоимость = СтрокаВыборкиНДСПродукция.НДСВключенВСтоимость;
			//НоваяСтрока.ВидЦенности = СтрокаВыборкиНДСПродукция.ВидЦенности;
			//НоваяСтрока.СчетУчетаНДС = СтрокаВыборкиНДСПродукция.СчетУчетаНДС;
			//НоваяСтрока.Стоимость = Сумма;
			//НоваяСтрока.НДС = СуммаНДС;
			//НоваяСтрока.Количество  = 0;
			/*// Если в наборе записей 1000 строк, запишем набор.
*/
			if(true/*НаборЗаписейНДСПартииТоваров.Количество() = 1000*/)
			{
				//НаборЗаписейНДСПартииТоваров.Записать(Ложь);
			}
		}
		// СформироватьДвиженияПоРегиструНДСПартииТоваров()
		// Процедура формирует движение по регистру "НДС незавершенное производство".
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//	СтрокаВыборки - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса
		//	СтрокаВыборкиНДСПродукция - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса по НДС продукция
		//  Сумма - Число - Сумма затрат
		//  СуммаНДС - Число - Сумма затрат (НДС)
		//	НаборЗаписейНДСНезавершенноеПроизводство - РегистрНакопленияНаборЗаписей - Набор записей регистра накопления "НДС по незавершенному производству".
		//

		public void СформироватьДвиженияПоРегиструНДСНезавершенноеПроизводствоВыпускПродукции(/*
	СтруктураШапкиДокумента,
	СтрокаВыборки,
	СтрокаВыборкиНДСПродукция,
	Сумма,
	СуммаНДС,
	НаборЗаписейНДСНезавершенноеПроизводство
	*/)
		{
			if(true/*Сумма = 0
	   И СуммаНДС = 0*/)
			{
			}
			/*// В движениях по регистру "НДС по незавершенному производству" должны быть заполнены измерения:
*/
			/*//	- Подразделение,
*/
			/*//	- СчетУчета,
*/
			/*//	- СтатьяЗатрат,
*/
			/*//	- НоменклатурнаяГруппа,
*/
			/*//	- Заказ,
*/
			/*//	- Затрата - всегда заполняется в случае указания статей затрат с видом затрат "Материальные",
*/
			/*//		для нематериальных статей затрат должен заполнятся способ распределения затрат.
*/
			/*//	- ХарактеристикаЗатраты,
*/
			/*//	- СерияЗатраты - заполняется, если ведется учет по сериям в НЗП.
*/
			/*//
*/
			/*//	- ВидЦенности,
*/
			/*//	- СчетФактура,
*/
			/*//	- СтавкаНДС,
*/
			/*//	- СчетУчетаНДС,
*/
			/*//	- НДСВключенВСтоимость.
*/
			/*//
*/
			/*// В движениях должны быть заполнены ресурсы:
*/
			/*//	- Стоимость,
*/
			/*//	- НДС.
*/
			//НоваяСтрока = НаборЗаписейНДСНезавершенноеПроизводство.Добавить();
			//НоваяСтрока.Активность = Истина;
			//НоваяСтрока.ВидДвижения = ВидДвиженияНакопления.Приход;
			//НоваяСтрока.Период = СтрокаВыборки.ДокументВыпускаДата;
			//НоваяСтрока.СчетУчета = СтрокаВыборки.СчетДт;
			//НоваяСтрока.Подразделение = СтрокаВыборки.ПодразделениеПолучатель;
			//НоваяСтрока.НоменклатурнаяГруппа = СтрокаВыборки.НоменклатурнаяГруппаПолучатель;
			//НоваяСтрока.СтатьяЗатрат = СтрокаВыборки.СтатьяЗатратПолучатель;
			//НоваяСтрока.Заказ = СтрокаВыборки.ЗаказПолучатель;
			if(true/*СтрокаВыборки.ВидЗатрат = Перечисления.ВидыЗатрат.Материальные*/)
			{
				//НоваяСтрока.Затрата = СтрокаВыборки.Продукция;
				if(true/*Не СтрокаВыборки.Услуга*/)
				{
					if(true/*СтруктураШапкиДокумента.ПартионныйУчетНДСвРазрезеСерийИХарактеристик*/)
					{
						//НоваяСтрока.ХарактеристикаЗатраты = СтрокаВыборки.ХарактеристикаПродукции;
					}
					if(true/*СтруктураШапкиДокумента.ПартионныйУчетНДСвРазрезеСерийИХарактеристик
			   И СтрокаВыборки.ВестиУчетПоСериямВНЗП*/)
					{
						//НоваяСтрока.СерияЗатраты = СтрокаВыборки.СерияПродукции;
					}
				}
			}
			/*// Данные для учета НДС.
*/
			//НоваяСтрока.СтавкаНДС = СтрокаВыборкиНДСПродукция.СтавкаНДС;
			//НоваяСтрока.СчетФактура = СтрокаВыборкиНДСПродукция.СчетФактура;
			//НоваяСтрока.НДСВключенВСтоимость = СтрокаВыборкиНДСПродукция.НДСВключенВСтоимость;
			//НоваяСтрока.ВидЦенности = СтрокаВыборкиНДСПродукция.ВидЦенности;
			//НоваяСтрока.СчетУчетаНДС = СтрокаВыборкиНДСПродукция.СчетУчетаНДС;
			//НоваяСтрока.КодОперации = Перечисления.КодыОперацийНезавершенноеПроизводство.ВнутренниеУслугиНаПроизводство;
			//НоваяСтрока.Стоимость = Сумма;
			//НоваяСтрока.НДС = СуммаНДС;
			//НоваяСтрока.Количество  = 0;
			/*// Если в наборе записей 1000 строк, запишем набор.
*/
			if(true/*НаборЗаписейНДСНезавершенноеПроизводство.Количество() = 1000*/)
			{
				//НаборЗаписейНДСНезавершенноеПроизводство.Записать(Ложь);
			}
		}
		// СформироватьДвиженияПоРегиструНДСНезавершенноеПроизводствоВыпускПродукции()
		// Процедура формирует движение по регистру "НДС предъявленный, реализация 0%".
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//	СтрокаВыборки - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса
		//	СтрокаВыборкиНДСПродукция - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса по НДС продукция
		//  Сумма - Число - Сумма затрат
		//  СуммаНДС - Число - Сумма затрат (НДС)
		//	НаборЗаписейНДСПредъявленныйРеализация0 - РегистрНакопленияНаборЗаписей - Набор записей регистра накопления "НДС предъявленный, реализация 0%".
		//

		public void СформироватьДвиженияПоРегиструНДСПредъявленныйРеализация0(/*
	СтруктураШапкиДокумента,
	СтрокаВыборки,
	СтрокаВыборкиНДСПродукция,
	Сумма,
	СуммаНДС,
	НаборЗаписейНДСПредъявленныйРеализация0
	*/)
		{
			if(true/*Сумма = 0
	   И СуммаНДС = 0*/)
			{
			}
			/*// В движениях по регистру "НДС предъявленный, реализация 0%" должны быть заполнены измерения:
*/
			/*//	- Организация,
*/
			/*//	- СчетФактура,
*/
			/*//	- Состояние,
*/
			/*//	- ДокументОтгрузки,
*/
			/*//	- ВидЦенности,
*/
			/*//	- СтавкаНДС,
*/
			/*//	- СчетУчетаНДС.
*/
			/*//
*/
			/*// В движениях должны быть заполнены ресурсы:
*/
			/*//	- СуммаБезНДС,
*/
			/*//	- НДС.
*/
			//НоваяСтрока = НаборЗаписейНДСПредъявленныйРеализация0.Добавить();
			//НоваяСтрока.Активность = Истина;
			//НоваяСтрока.ВидДвижения = ВидДвиженияНакопления.Приход;
			//НоваяСтрока.Период = СтрокаВыборки.ДокументВыпускаДата;
			//НоваяСтрока.Организация = СтруктураШапкиДокумента.Организация;
			//НоваяСтрока.ДокументОтгрузки = СтрокаВыборки.ДокументВыпуска;
			//НоваяСтрока.Состояние = Перечисления.НДССостоянияРеализация0.ОжидаетсяПодтверждение;
			//НоваяСтрока.СтавкаНДС = СтрокаВыборкиНДСПродукция.СтавкаНДС;
			//НоваяСтрока.СчетФактура = СтрокаВыборкиНДСПродукция.СчетФактура;
			//НоваяСтрока.ВидЦенности = СтрокаВыборкиНДСПродукция.ВидЦенности;
			//НоваяСтрока.СчетУчетаНДС = СтрокаВыборкиНДСПродукция.СчетУчетаНДС;
			//НоваяСтрока.СуммаБезНДС = Сумма - СуммаНДС;
			//НоваяСтрока.НДС = СуммаНДС;
			/*// Если в наборе записей 1000 строк, запишем набор.
*/
			if(true/*НаборЗаписейНДСПредъявленныйРеализация0.Количество() = 1000*/)
			{
				//НаборЗаписейНДСПредъявленныйРеализация0.Записать(Ложь);
			}
		}
		// СформироватьДвиженияПоРегиструНДСПредъявленныйРеализация0()
		///////////////////////////////////////////////////////////////////////////////
		// Процедура формирования движений по направлениям выпуска.
		//

		public void ДосписатьПоНаправлениюВыпуска(/*
	СтруктураШапкиДокумента,
	СтрокаВыборки,
	СтрокаВыборкиНДСПродукция,
	СуммаЗатрат,
	СуммаЗатратНДС,
	СтруктураНаборыЗаписей
	*/)
		{
			/*// Сформируем движения по регистру "НДС по партиям запасов".
*/
			if(true/*СтрокаВыборки.КодОперации = Перечисления.КодыОперацийВыпускПродукции.ВыпускПродукцииФиксНаСклад
	 ИЛИ СтрокаВыборки.КодОперации = Перечисления.КодыОперацийВыпускПродукции.ВозвратМатериаловИзПроизводстваРасч*/)
			{
				/*СформироватьДвиженияПоРегиструНДСПартииТоваров(
			СтруктураШапкиДокумента,
			СтрокаВыборки,
			СтрокаВыборкиНДСПродукция,
			СуммаЗатрат,
			СуммаЗатратНДС,
			СтруктураНаборыЗаписей.НДСПартииТоваров
		);*/
			}
		}
		// ДосписатьПоНаправлениюВыпуска()
		///////////////////////////////////////////////////////////////////////////////
		// Функция получения массива счетов-фактур.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура - Реквизиты документа "Расчет НДС по продукции"
		//
		// Возвращаемое значение:
		//   Массив – Массив счетов-фактур
		//

		public object ПолучитьМассивСчетовФактур(/*
	СтруктураШапкиДокумента
	*/)
		{
			//ЗапросСчетаФактуры = Новый Запрос;
			/*ЗапросСчетаФактуры.Текст = "
	|ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	НДСПродукция.СчетФактура
	|ИЗ
	|	РегистрНакопления.НДСПродукция.Обороты(&НачГраница, &КонГраница, ,
	|		Подразделение.Владелец = &Организация
	|	) КАК НДСПродукция
	|";*/
			//ЗапросСчетаФактуры.УстановитьПараметр("Организация", СтруктураШапкиДокумента.Организация);
			//ЗапросСчетаФактуры.УстановитьПараметр("НачГраница", СтруктураШапкиДокумента.НачГраница);
			//ЗапросСчетаФактуры.УстановитьПараметр("КонГраница", СтруктураШапкиДокумента.КонГраница);
			//РезультатЗапроса = ЗапросСчетаФактуры.Выполнить().Выгрузить();
			//МассивСчетовФактур = РезультатЗапроса.ВыгрузитьКолонку("СчетФактура");
			return null;
		}
		// ПолучитьМассивСчетовФактур()
		// Функция получает структуру поиска строк результата запроса по выпуску продукции.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//	СтрокаВыборки - ВыборкаИзРезультатаЗапроса - Строка выборки из результата запроса по затратам на выпуск
		//
		// Возвращаемое значение:
		//	Структура - Структура поиска
		//

		public object ПолучитьСтруктуруПоискаСтрокВыпускаПродукции(/*
	СтруктураШапкиДокумента,
	СтрокаВыборки
	*/)
		{
			//СтруктураПоиска = Новый Структура;
			//СтруктураПоиска.Вставить("Подразделение", СтрокаВыборки.Подразделение);
			//СтруктураПоиска.Вставить("НоменклатурнаяГруппа", СтрокаВыборки.НоменклатурнаяГруппа);
			//СтруктураПоиска.Вставить("Продукция", СтрокаВыборки.Продукция);
			//СтруктураПоиска.Вставить("ХарактеристикаПродукции", СтрокаВыборки.ХарактеристикаПродукции);
			//СтруктураПоиска.Вставить("СерияПродукции", СтрокаВыборки.СерияПродукции);
			//СтруктураПоиска.Вставить("Спецификация", СтрокаВыборки.Спецификация);
			//СтруктураПоиска.Вставить("Заказ", СтрокаВыборки.Заказ);
			//СтруктураПоиска.Вставить("СчетУчетаНЗП", СтрокаВыборки.СчетУчета);
			return null;
		}
		// ПолучитьСтруктуруПоискаСтрокВыпускаПродукции()
		// Процедура формирует корректирующие движения по выпуску продукции и услуг.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//  ЗапросПоНДСПродукция - Запрос - Запрос по регистру "НДС продукция"
		//  ЗапросПоВыпускуПродукции - Запрос - Запрос по регистру "Выпуск продукции" с направлениями списания продукции
		//	НомерПередела - Число - Текущий номер передела, для которого производится расчет себестоимости
		//  СтруктураДвижений - Структура - Наборы движений по регистрам
		//

		public void КорректировкаДвиженийПоВыпускуПродукцииНДС(/*
	СтруктураШапкиДокумента,
	ЗапросПоНДСПродукция,
	ЗапросПоВыпускуПродукции,
	НомерПередела,
	СтруктураНаборыЗаписей
	*/)
		{
			/*// Выполним запрос по затратам на выпуск продукции.
*/
			//МассивСчетовФактур = ПолучитьМассивСчетовФактур(СтруктураШапкиДокумента);
			//ЗапросПоНДСПродукция.УстановитьПараметр("МассивСчетовФактур", МассивСчетовФактур);
			//ЗапросПоНДСПродукция.УстановитьПараметр("НомерПередела", НомерПередела);
			//РезультатЗапросаПоНДСПродукция = ЗапросПоНДСПродукция.Выполнить();
			/*// Выполним запрос по выпуску продукции.
*/
			//ЗапросПоВыпускуПродукции.УстановитьПараметр("НомерПередела", НомерПередела);
			//РезультатЗапросаПоВыпускуПродукции = ЗапросПоВыпускуПродукции.Выполнить();
			//ВыборкаПоВыпуску = РезультатЗапросаПоВыпускуПродукции.Выбрать();
			//ВыборкаПоНДСПродукция = РезультатЗапросаПоНДСПродукция.Выбрать();
			while(true/*ВыборкаПоНДСПродукция.Следующий()*/)
			{
				/*// Выберем выпуск продукции с направлениями списания.
*/
				/*СтруктураПоискаВыпуск = ПолучитьСтруктуруПоискаСтрокВыпускаПродукции(
			СтруктураШапкиДокумента,
			ВыборкаПоНДСПродукция
		);*/
				//МассивКоэф = Новый Массив;
				//СуммаКоэф = 0;
				//ВыборкаПоВыпуску.Сбросить();
				while(true/*ВыборкаПоВыпуску.НайтиСледующий(СтруктураПоискаВыпуск)*/)
				{
					//МассивКоэф.Добавить(ВыборкаПоВыпуску.Количество);
					//СуммаКоэф = СуммаКоэф + ВыборкаПоВыпуску.Количество;
				}
				if(true/*СуммаКоэф = 0*/)
				{
				}
				//МассивСумм = ОбщегоНазначения.РаспределитьПропорционально(ВыборкаПоНДСПродукция.СуммаЗатрат, МассивКоэф, 2);
				//МассивНДС  = ОбщегоНазначения.РаспределитьПропорционально(ВыборкаПоНДСПродукция.СуммаЗатратНДС, МассивКоэф, 2);
				//Индекс = 0;
				//ВыборкаПоВыпуску.Сбросить();
				while(true/*ВыборкаПоВыпуску.НайтиСледующий(СтруктураПоискаВыпуск)*/)
				{
					//СуммаЗатрат    = ?(МассивСумм = Неопределено, 0, МассивСумм[Индекс]);
					//СуммаЗатратНДС = ?(МассивНДС = Неопределено, 0, МассивНДС[Индекс]);
					if(true/*СуммаЗатрат <> 0 ИЛИ СуммаЗатратНДС <> 0*/)
					{
						/*ДосписатьПоНаправлениюВыпуска(
					СтруктураШапкиДокумента,
					ВыборкаПоВыпуску,
					ВыборкаПоНДСПродукция,
					СуммаЗатрат,
					СуммаЗатратНДС,
					СтруктураНаборыЗаписей
				);*/
					}
					//Индекс = Индекс + 1;
				}
				//;;
			}
			if(true/*СтруктураНаборыЗаписей.НДСПартииТоваров.Модифицированность()*/)
			{
				//СтруктураНаборыЗаписей.НДСПартииТоваров.Записать(Ложь);
			}
			if(true/*СтруктураНаборыЗаписей.НДСНезавершенноеПроизводство.Модифицированность()*/)
			{
				//СтруктураНаборыЗаписей.НДСНезавершенноеПроизводство.Записать(Ложь);
			}
			if(true/*СтруктураНаборыЗаписей.НДСПредъявленныйРеализация0.Модифицированность()*/)
			{
				//СтруктураНаборыЗаписей.НДСПредъявленныйРеализация0.Записать(Ложь);
			}
			if(true/*СтруктураНаборыЗаписей.Хозрасчетный.Модифицированность()*/)
			{
				//СтруктураНаборыЗаписей.Хозрасчетный.Записать(Ложь);
			}
		}
		// КорректировкаДвиженийПоВыпускуПродукцииНДС()
		///////////////////////////////////////////////////////////////////////////////
		// Процедура производит корректировку списания по регистру "НДС партии товаров".
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура – Реквизиты документа "Расчет НДС по продукции"
		//	НомерПередела - Число - Текущий номер передела
		//

		public void КорректировкаДвиженийНДСПартииТоваров(/*СтруктураШапкиДокумента, НомерПередела*/)
		{
			/*ТекстЗапроса = "
	|ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	НДСПартииТоваров.Регистратор КАК Регистратор
	|ИЗ
	|	РегистрНакопления.НДСПартииТоваров.Обороты(&НачГраница, &КонГраница, Регистратор,
	|		Организация = &Организация
	|	) КАК НДСПартииТоваров
	|		
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ (
	|		ВЫБРАТЬ РАЗЛИЧНЫЕ 
	|			Распределение.Продукция КАК Продукция,
	|			Распределение.ХарактеристикаПродукции КАК ХарактеристикаПродукции,
	|			Распределение.СерияПродукции КАК СерияПродукции
	|		ИЗ			
	|			РегистрСведений.РаспределениеПродукцииПоПеределамОрганизаций КАК Распределение
	|		ГДЕ
	|			Распределение.Период МЕЖДУ &НачДата И &КонДата
	|			И Распределение.Организация = &Организация
	|			И Не Распределение.КорректировкаНЗП
	|			И Не Распределение.ОприходованиеНЗП
	|			И Не Распределение.ВозвратИзНЗП
	|			И (Распределение.НомерПередела = &НомерПередела ИЛИ &НомерПередела = 0)
	|		) КАК Распределение
	|	ПО 
	|		НДСПартииТоваров.Номенклатура = Распределение.Продукция
	|		И НДСПартииТоваров.ХарактеристикаНоменклатуры = Распределение.ХарактеристикаПродукции
	|		И НДСПартииТоваров.СерияНоменклатуры = Распределение.СерияПродукции
	|
	|ГДЕ
	|	НДСПартииТоваров.КоличествоРасход <> 0
	|
	|УПОРЯДОЧИТЬ ПО
	|	Регистратор
	|АВТОУПОРЯДОЧИВАНИЕ
	|";*/
			//Запрос = Новый Запрос;
			//Запрос.Текст = ТекстЗапроса;
			//Запрос.УстановитьПараметр("Организация", СтруктураШапкиДокумента.Организация);
			//Запрос.УстановитьПараметр("НачДата", СтруктураШапкиДокумента.НачДата);
			//Запрос.УстановитьПараметр("КонДата", СтруктураШапкиДокумента.КонДата);
			//Запрос.УстановитьПараметр("НачГраница", СтруктураШапкиДокумента.НачГраница);
			//Запрос.УстановитьПараметр("КонГраница", СтруктураШапкиДокумента.КонГраница);
			//Запрос.УстановитьПараметр("НомерПередела", НомерПередела);
			//ТаблицаДокументов = Запрос.Выполнить().Выгрузить();
			//УправлениеЗапасамиПартионныйУчетФормированиеПроводокРегл.ДвижениеНДС(ТаблицаДокументов);
		}
		// КорректировкаДвиженийНДСПартииТоваров()
		///////////////////////////////////////////////////////////////////////////////
		// Процедура определения начального и конечного номера передела.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура - Реквизиты документа "Расчет НДС по продукции"
		//
		// Выходные параметры
		//	НачальныйПередел - Число - Начальный номер передела
		//	КонечныйПередел - Число - Конечный номер передела
		//

		public void ПолучитьНачальныйИКонечныйНомерПередела(/*
	СтруктураШапкиДокумента,
	НачальныйПередел,
	КонечныйПередел
	*/)
		{
			/*ТекстЗапроса = "
	|ВЫБРАТЬ
	|	МИНИМУМ(РаспределениеЗатрат.НомерПередела) КАК НачальныйПередел,
	|	МАКСИМУМ(РаспределениеЗатрат.НомерПередела) КАК КонечныйПередел
	|ИЗ
	|	РегистрСведений.РаспределениеЗатратПоПеределамОрганизаций КАК РаспределениеЗатрат
	|
	|ГДЕ
	|	РаспределениеЗатрат.Период МЕЖДУ &НачДата И &КонДата
	|	И РаспределениеЗатрат.Организация = &Организация
	|";*/
			//Запрос = Новый Запрос;
			//Запрос.Текст = ТекстЗапроса;
			//Запрос.УстановитьПараметр("НачДата", СтруктураШапкиДокумента.НачДата);
			//Запрос.УстановитьПараметр("КонДата", СтруктураШапкиДокумента.КонДата);
			//Запрос.УстановитьПараметр("Организация", СтруктураШапкиДокумента.Организация);
			//НачальныйПередел = 0;
			//КонечныйПередел = 0;
			//РезультатЗапроса = Запрос.Выполнить();
			if(true/*Не РезультатЗапроса.Пустой()*/)
			{
				//Выборка = РезультатЗапроса.Выбрать();
				if(true/*Выборка.Следующий()*/)
				{
					//НачальныйПередел = ?(Выборка.НачальныйПередел = NULL, 0, Выборка.НачальныйПередел);
					//КонечныйПередел = ?(Выборка.КонечныйПередел = NULL, 0, Выборка.КонечныйПередел);
				}
			}
		}
		// ПолучитьНачальныйИКонечныйНомерПередела()
		// Функция получает наборы записей регистров.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура - Реквизиты документа "Расчет НДС по продукции"
		//
		// Возвращаемое значение:
		//   Структура – Структура с наборами записей регистров.
		//

		public object ПолучитьНаборЗаписейНДС(/*СтруктураШапкиДокумента*/)
		{
			//СтруктураНаборыЗаписей = Новый Структура;
			//СтруктураНаборыЗаписей.Вставить("НДСПродукция");
			//СтруктураНаборыЗаписей.Вставить("НДСНезавершенноеПроизводство");
			//СтруктураНаборыЗаписей.Вставить("НДСПартииТоваров");
			//СтруктураНаборыЗаписей.Вставить("НДСПредъявленныйРеализация0");
			//СтруктураНаборыЗаписей.Вставить("Хозрасчетный");
			return null;
		}
		// ПолучитьНаборЗаписейНДС()
		// Процедура производит расчет затратам на выпуск продукции для целей НДС.
		//
		// Параметры
		//  СтруктураШапкиДокумента – Структура - Реквизиты документа "Расчет НДС по продукции"
		//

		public void РасчетЗатратНаВыпускПродукцииНДС(/*СтруктураШапкиДокумента*/)
		{
			//НачальныйПередел = 0;
			//КонечныйПередел = 0;
			/*ПолучитьНачальныйИКонечныйНомерПередела(
		СтруктураШапкиДокумента,
		НачальныйПередел,
		КонечныйПередел
		);*/
			if(true/*НачальныйПередел = 0 ИЛИ КонечныйПередел = 0*/)
			{
			}
			/*// Формирование запроса по незавершенному производству.
*/
			//ТекстЗапроса = СформироватьТекстЗапросаПоНезавершенномуПроизводству();
			/*ЗапросПоНезавершенномуПроизводству = СформироватьЗапросПоНезавершенномуПроизводству(
		СтруктураШапкиДокумента,
		ТекстЗапроса
		);*/
			//ТекстЗапроса = СформироватьТекстЗапросаПоНезавершенномуПроизводствуПоСчетамФактурам();
			/*ЗапросПоНезавершенномуПроизводствуПоСчетамФактурам = СформироватьЗапросПоНезавершенномуПроизводству(
		СтруктураШапкиДокумента,
		ТекстЗапроса
		);*/
			/*// Формирование запроса по затратам на выпуск.
*/
			/*ЗапросПоЗатратамНаВыпуск = СформироватьЗапросПоЗатратамНаВыпуск(
		СтруктураШапкиДокумента
		);*/
			/*// Формирование запроса по НДС продукция.
*/
			/*ЗапросПоНДСПродукция = СформироватьЗапросПоНДСПродукция(
		СтруктураШапкиДокумента
		);*/
			/*// Формирование запроса по направлением выпуска продукции.
*/
			/*ЗапросПоВыпускуПродукции = СформироватьЗапросПоНаправлениямВыпускаПродукцииНДС(
		СтруктураШапкиДокумента
		);*/
			//СтруктураНаборыЗаписей = ПолучитьНаборЗаписейНДС(СтруктураШапкиДокумента);
		}
		// РасчетЗатратНаВыпускПродукцииНДС()
	}
}
